커밋 그래프

4 커밋

작성자 SHA1 메시지 날짜
a81e68ad30 fix(batch): 1 chunk = 1 job_execution_id 보장 및 BatchWriteListener SQL null 수정
- BaseSyncReader: 한 그룹 데이터 반환 후 null로 청크 종료하여
  1 chunk = 1 job_execution_id 보장
- chunk(Integer.MAX_VALUE): Reader의 null로만 청크 경계 결정
- BatchWriteListener: SQL을 실행 시점에 생성하여 CommonSql.SOURCE_SCHEMA
  초기화 전 null 참조 문제 해결 (빈 생성 시 → 실행 시 지연 생성)
- JobConfig: BatchWriteListener에 SQL 대신 테이블명 전달
- Repository: 배치 삽입 시작/완료 로그 주석처리

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 09:33:44 +09:00
edef10e4bc refactor(batch): BaseSyncReader 추출 및 Reader 청크 경계 제어 방식 변경
문제: GroupByExecutionIdPolicy 사용 시 Reader가 다음 그룹 데이터를
미리 로드하면서 N→P 전환이 청크 분리보다 먼저 발생하여,
한 청크에 여러 job_execution_id가 섞이는 경우 P 상태 고착 발생

해결: Reader 자체에서 peek/fetch 2단계로 청크 경계를 제어
- BaseSyncReader 추상 클래스 추출 (peek → fetch 2단계 분리)
- 47개 Reader를 BaseSyncReader 상속으로 변환 (-1,600줄 중복 제거)
- GroupByExecutionIdPolicy/ReadListener/ChunkListener를 Step에서 제거
- chunk(GroupByExecutionIdPolicy) → chunk(chunkSize) 변경

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 17:24:39 +09:00
924135e360 feat(동기화현황): 동기화 현황 메뉴 추가 (#1)
Backend:
- SyncStatusService: batch_flag 기반 테이블별 N/P/S 집계 (병렬 조회)
- SyncDataPreviewResponse/SyncStatusResponse DTO 추가
- BatchController: sync-status 조회/미리보기/P상태조회/리셋 API 4개
- BatchTableProperties: application.yml 테이블 매핑 ConfigurationProperties
- WebViewController: /sync-status SPA 라우트 추가

Frontend:
- SyncStatus 페이지: 도메인 탭 + 테이블 아코디언 + 인라인 데이터 테이블
- SyncDataPreviewModal/StuckRecordsModal 컴포넌트
- batchApi.ts: SyncStatus 관련 타입 및 API 함수 추가
- App.tsx 라우트 + Navbar 메뉴 추가

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 17:12:20 +09:00
744cc02f36 feat: snp-sync-batch 프로젝트 초기 설정
mda-snp-batch 기반으로 snp-sync-batch 프로젝트 생성
- 프론트엔드: Thymeleaf → React + TypeScript + Vite + Tailwind CSS 전환
- 컨텍스트: /snp-sync, 포트 8051
- 재수집(Recollection) 관련 코드 제거
- displayName → job_schedule.description 기반으로 전환
- 누락 API 추가 (statistics, jobs/detail, executions/recent)
- 실행 이력 조회 속도 개선 (JDBC 경량 쿼리)
- 스케줄 CRUD API 메서드 매핑 수정 (PUT/DELETE)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 13:33:31 +09:00