fix(스케줄러): Quartz JDBC Store 미적용 수정 — RAMJobStore에서 JDBC Store로 전환 (#12) #52

병합
HYOJIN bugfix/ISSUE-12-quartz-jdbc-store 에서 develop 로 2 commits 를 머지했습니다 2026-03-16 17:52:55 +09:00
소유자

변경 사항

  • QuartzConfig에 DataSource/QuartzProperties 명시적 주입 — 커스텀 SchedulerFactoryBean 빈이 Spring Boot auto-configuration을 비활성화하여 RAMJobStore(인메모리)로 구동되던 문제 수정
  • initialize-schemanever로 변경 (std_snp_data 스키마에 수동 DDL 관리)
  • std_snp_data 스키마용 Quartz DDL 스크립트 추가

배경

Quartz가 JDBC Store가 아닌 RAMJobStore로 구동되어 앱 재시작(배포) 시 트리거 상태 추적이 불가능했고, 구/신 프로세스가 동시에 독립된 메모리에서 cron을 실행하여 3~4분 간격 중복 실행이 발생함.

관련 이슈

테스트

  • dev 환경 QRTZ_ 테이블 수동 생성 및 권한 부여
  • 앱 재시작 후 QRTZ_JOB_DETAILS, QRTZ_TRIGGERS 등에 17개 스케줄 정상 등록 확인
  • 스케줄러 정상 동작 확인

운영 배포 시 필요 작업

  • std_snp_data 스키마에 quartz_tables_postgres.sql 실행
  • 앱 사용 계정에 QRTZ_ 테이블 GRANT ALL
## 변경 사항 - QuartzConfig에 DataSource/QuartzProperties 명시적 주입 — 커스텀 `SchedulerFactoryBean` 빈이 Spring Boot auto-configuration을 비활성화하여 RAMJobStore(인메모리)로 구동되던 문제 수정 - `initialize-schema`를 `never`로 변경 (std_snp_data 스키마에 수동 DDL 관리) - std_snp_data 스키마용 Quartz DDL 스크립트 추가 ## 배경 Quartz가 JDBC Store가 아닌 RAMJobStore로 구동되어 앱 재시작(배포) 시 트리거 상태 추적이 불가능했고, 구/신 프로세스가 동시에 독립된 메모리에서 cron을 실행하여 3~4분 간격 중복 실행이 발생함. ## 관련 이슈 - closes #12 ## 테스트 - [x] dev 환경 QRTZ_ 테이블 수동 생성 및 권한 부여 - [x] 앱 재시작 후 QRTZ_JOB_DETAILS, QRTZ_TRIGGERS 등에 17개 스케줄 정상 등록 확인 - [x] 스케줄러 정상 동작 확인 ## 운영 배포 시 필요 작업 - [ ] `std_snp_data` 스키마에 `quartz_tables_postgres.sql` 실행 - [ ] 앱 사용 계정에 QRTZ_ 테이블 GRANT ALL
HYOJIN added 2 commits 2026-03-16 17:52:29 +09:00
- QuartzConfig에 DataSource/QuartzProperties 명시적 주입 (커스텀 빈이 auto-config을 비활성화하는 문제)
- initialize-schema를 never로 변경 (수동 DDL 관리)
- std_snp_data 스키마용 Quartz DDL 스크립트 추가

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
claude-bot 이 변경사항을 승인하였습니다. 2026-03-16 17:52:54 +09:00
claude-bot left a comment
멤버

MR 승인 (via /mr skill)

MR 승인 (via /mr skill)
HYOJIN merged commit 0b4f64439b into develop 2026-03-16 17:52:55 +09:00
HYOJIN 삭제된 브랜치 bugfix/ISSUE-12-quartz-jdbc-store 2026-03-16 17:52:55 +09:00
"로그인하여 이 대화에 참여"
No reviewers
레이블 없음
마일스톤 없음
담당자 없음
참여자 2명
알림
마감일
기한이 올바르지 않거나 범위를 벗어났습니다. 'yyyy-mm-dd'형식을 사용해주십시오.

마감일이 설정되지 않았습니다.

의존성

No dependencies set.

Reference: gc/snp-batch-validation#52
No description provided.