Skip to content

Vector Projection points/search-visualization 조회 시 500 오류 발생 #382

@donghyuck

Description

@donghyuck

Issue

Type

  • Feature
  • Bug
  • Refactor
  • Docs
  • Chore

Size

  • Small (1): 단순 수정 / 단일 파일
  • Medium (2): 기능 단위 변경 / 다중 파일
  • Large (3): 구조 변경 / 복수 모듈

Summary

  • Vector Projection 생성은 COMPLETED까지 정상 처리되지만, 완료된 Projection의 points 조회와 search-visualization 호출이 500 오류로 실패합니다.

Background

  • 프론트엔드 /services/ai/vector-visualization 화면에서 기존 RAG 색인 chunk를 대상으로 Vector Map Projection을 생성했습니다.
  • POST /api/mgmt/ai/vectors/projections 호출 후 Projection은 COMPLETED, itemCount=122 상태가 되었습니다.
  • 하지만 좌표 조회와 검색 시각화 API가 500 오류를 반환하여 산점도 렌더링과 검색 결과 검증이 불가능합니다.

Scope

  • GET /api/mgmt/ai/vectors/projections/{projectionId}/points 500 오류 원인 확인 및 수정
  • POST /api/mgmt/ai/vectors/search-visualization 500 오류 원인 확인 및 수정
  • Projection point 저장 시 사용한 vectorItemId와 조회 시 tb_ai_document_chunk join 조건이 일치하는지 검증
  • 필요 시 JdbcVectorProjectionPointRepositorypointJoinExpression(), findPage(), findByVectorItemIds() 조회 조건 보정

Acceptance Criteria

  • COMPLETED Projection에 대해 GET /api/mgmt/ai/vectors/projections/{projectionId}/points?limit=2000&offset=0 호출 시 200 응답과 좌표 목록이 반환된다.
  • POST /api/mgmt/ai/vectors/search-visualization 호출 시 query point와 Top-K 결과가 반환된다.
  • targetTypes 없이 생성한 Projection이 기존 RAG chunk 전체 대상으로 정상 조회된다.
  • targetType 필터를 지정해도 서버 오류 없이 필터 결과 또는 빈 목록이 반환된다.
  • 오류 발생 시 500 대신 원인 파악 가능한 4xx/5xx detail이 반환된다.

Validation Plan

  • build
  • test
  • smoke / manual check
  • analysis only (no code change)

AI-Assisted

  • Yes
  • No

AI Usage

  • Usage type: 브라우저 수동 검증, 서버 코드 분석, 이슈 초안 작성
  • Subagent used: No
  • Delegated scope: N/A
  • Main author validation: Projection 생성 후 points/search-visualization API를 직접 호출하고 /services/ai/vector-visualization 화면에서 산점도와 Top-K 결과 표시를 확인합니다.

Notes

  • 재현된 Projection 예시는 RAG Vector Map 2026. 4. 30. 오후 1:48:29, COMPLETED, itemCount=122입니다.
  • DOCUMENT, DOCUMENT_CHUNK로 targetTypes를 제한하면 Projection이 FAILED · 0건이 되었고, targetTypes 없이 생성하면 COMPLETED · 122건이 되었습니다.
  • 서버 코드상 Projection 대상은 tb_ai_document_chunk.object_type 기준으로 보이며, 기존 RAG 파일의 objectType은 DOCUMENT_CHUNK가 아닐 수 있습니다.
  • 의심 지점은 JdbcVectorProjectionPointRepository.findPage, findByVectorItemIds, pointJoinExpression()입니다.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions