Skip to content

test(session): 세션 목록 PostgreSQL 성능 실측 및 결과 문서화 - #151

Merged
krestar merged 5 commits into
mainfrom
test/130-session-library-benchmark-evidence
Oct 26, 2026
Merged

krestar merged 5 commits into
mainfrom
test/130-session-library-benchmark-evidence

Conversation

@krestar

@krestar krestar commented Oct 26, 2026 •

Copy link
Copy Markdown
Owner

왜 필요한가요?

Issue #130 / PR #150의 누락된 실제 PostgreSQL query count 및 실행 계획 비교 근거를 남깁니다.

무엇이 바뀌나요?

  • 게임 규칙·상태: 변경 없음.
  • Backend / API / DB: runtime 동작/DDL 변경 없음. PostgreSQL Testcontainers 벤치마크만 추가.
  • AI narrative / prompt: 변경 없음.
  • Image generation: 변경 없음.
  • Frontend / UX: 변경 없음.
  • Build / deploy / docs: 이전 조회 패턴 대 현재 실제 서비스 쿼리 비교. 쿼리 수, 5회 중앙값, EXPLAIN (ANALYZE, BUFFERS)를 CI artifact로 수집.

책임 경계

  • 서버가 결정하는 사실: 기존 canonical 결과는 변경하지 않음.
  • LLM이 서술하는 내용: 변경 없음.
  • LLM이 변경하면 안 되는 사실: 변경 없음.

어떻게 검증했나요?

  • PR 작성 전 변경 diff를 비판적으로 검토하고 타당한 지적을 반영했습니다.
  • ./gradlew clean test
  • ./gradlew postgresIntegrationTest
  • ./gradlew build
  • cd frontend && npm ci && npm test && npm run lint && npm run build
  • 정상 흐름을 직접 확인했습니다. (수동 브라우저 smoke 미수행)
  • 잘못된 입력/실패 흐름을 확인했습니다. (runtime/API 변경 없음)
  • 중복 요청 또는 상태 전이가 관련되면 이를 검증했습니다. (해당 없음: 읽기 전용 벤치마크)

실측 결과를 docs/benchmarks/session-library-issue-130.md에 기록하고 docs/architecture/session-list-resume.md에서 연결했습니다. 실측 artifact: Actions #40360701473. 세션 20/50/100의 SQL 호출: legacy 101/251/501 vs 현재 1/1/2. 서비스 경과 시간 중앙값(ms): legacy 69.025/153.307/248.573 vs 현재 2.966/3.169/5.569. 6,000행 fixture에서 전체 projection SQL이 V22의 정렬 및 mutation 인덱스를 사용한 실제 EXPLAIN 계획을 기록했습니다. legacy는 이전 repository 호출 패턴 재현이며 과거 운영 계측값이 아닙니다. CI에서 한번의 컴파일 실패(JdbcTemplate query lambda overload)를 확인해 명시적 ResultSetExtractor 타입으로 수정했습니다. 벤치마크 실행 CI #40360701473 및 최종 문서 반영 CI #40361167438 모두 전체 통과. 미수행 브라우저 smoke는 체크하지 않았습니다.

게임 상태·AI 안전성

DB fixture를 사용하는 읽기 벤치마크이며 production API 및 provider 변경 없음.

보안·비용

외부 provider 호출 없음. Testcontainers만 사용.

API·DB·운영 영향

Schema 및 API 계약 변경 없음. 기존 Testcontainers CI에서 추가로 실행하므로 러닝타임 증가 가능.

화면 / 응답 예시

API/UI 변경 없음.

@krestar
krestar merged commit d3e2306 into main Oct 26, 2026
2 checks passed
@krestar
krestar deleted the test/130-session-library-benchmark-evidence branch October 26, 2026 16:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Performance] Session Library 조회 pagination과 N+1 query 개선

1 participant