청크 재색인은 어디서 다시 시작하고 어떤 버전을 남겨야 할까
청크 로딩과 upsert만으로 재색인 일관성이 완성되지는 않는다. 체크포인트, 실시간 변경, 삭제 버전의 역할을 프로그램 검색 사례로 설명한다.
설정 과정, 배운 지식과 트러블슈팅 기록입니다.
청크 로딩과 upsert만으로 재색인 일관성이 완성되지는 않는다. 체크포인트, 실시간 변경, 삭제 버전의 역할을 프로그램 검색 사례로 설명한다.
과거 만료일을 복사한 새 쿠폰 행을 단서로 Java 발급 경로 밖의 writer를 추적한다. 발급 권리와 요청 중복의 키를 나누고 모든 쓰기 경로가 공유할 규칙을 설계한다.
커서 전송, 메모리 보관, 커밋은 서로 다른 경계다. 리뷰 필드 마이그레이션으로 청크별 커밋과 재시작 조건을 설명한다.
DTO 변환의 반복 조회를 페이지 단위 묶음 조회로 바꾼다. 목록·집계·직렬화까지 같은 결과를 유지하면서 비용을 확인한다.
배포 요청 수락, 환경 Ready, 원하는 버전의 응답은 서로 다른 확인 단계다. CI의 시간 제한을 실제 배포 진행과 연결하는 방법을 설명한다.
버전 41을 읽은 요청이 버전 42의 캐시 삭제 뒤에 값을 다시 넣는 순서를 살펴본다. 브라우저 캐시, 응답 캐시, 검색 투영본의 갱신 책임을 나눠 일관성 조건을 설계한다.
인증 실패와 응답 공개 실패는 별개다. OPTIONS, Security 필터, 실제 401 헤더를 나눠 허용된 화면이 오류 상태를 읽게 구성한다.
save 호출과 DB 반영은 같은 시점이 아니다. JSON 타입 계약과 flush·commit을 나눠 확인하고 외부 승인 뒤의 저장 실패까지 연결한다.