Skip to content

[REFACTOR] CacheErrorHandler를 커스텀 및 outbox 패턴 수정 사항 - #71

Merged
githyj-jang merged 9 commits into
devfrom
chore/66-chore-ci-cd-및-prometheus-grafana
May 17, 2026

Hidden character warning

The head ref may contain hidden characters: "chore/66-chore-ci-cd-\ubc0f-prometheus-grafana"
Merged

githyj-jang merged 9 commits into
devfrom
chore/66-chore-ci-cd-및-prometheus-grafana

Conversation

@githyj-jang

@githyj-jang githyj-jang commented May 17, 2026 •

Copy link
Copy Markdown
Contributor

📝 작업 내용

이번 PR에서 작업한 내용을 설명해주세요.

  • CacheErrorHandler를 커스텀 및 outbox 패턴 수정

🚀 주요 변경 사항

완료한 이슈 번호
Close #70
관련된 이슈 번호 (닫고 싶지 않은 경우)
Related to #

✅ 자체 체크리스트 (필수)

  • ./gradlew build 실행 결과 정상 (인증샷 첨부)
  • IntelliJ HTTP Client 테스트 완료 (인증샷 첨부)
  • 팀 내 컨벤션 준수 및 불필요한 로그, import 제거
  • 중요한 변경 사항이 팀에 공유되었는지

📸 테스트 인증샷

빌드 결과 및 IntelliJ HTTP Client 실행 화면을 여기에 첨부해 주세요.

💬 리뷰어 전달사항 (선택)

특별히 봐주었으면 하는 부분이나 논의가 필요한 점을 적어주세요.

  • 논의점


📎 참고 자료

관련 문서, 레퍼런스 링크 등이 있다면 여기에 첨부해주세요.

Summary by CodeRabbit

릴리스 노트

  • 버그 수정

    • 이벤트 처리 중 중복 발행 현상 개선
  • 기능 개선

    • 캐시 접근 오류에 대한 상세 로깅 추가
    • 이벤트 처리 상태 관리 메커니즘 강화
  • 테스트

    • 테스트 환경 설정 업데이트 및 CI 프로필 개선

Review Change Stack

Copilot AI review requested due to automatic review settings May 17, 2026 14:36
@coderabbitai

This comment was marked as resolved.

This comment was marked as resolved.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.github/workflows/ci-prod.yml:
- Line 34: The Gradle JVM property flag (-Dspring.profiles.active=test) won't be
propagated to test worker JVMs; ensure the test profile is enforced by either
setting the SPRING_PROFILES_ACTIVE environment variable for the test step or by
adding a test systemProperty passthrough in Gradle. Update the CI job to export
SPRING_PROFILES_ACTIVE=test (or set it in the step environment) or modify
build.gradle to include test { systemProperty 'spring.profiles.active',
System.getProperty('spring.profiles.active') } so tests reliably receive the
test profile.

In
`@src/main/java/com/michelet/reservation/infrastructure/outbox/OutboxEventScheduler.java`:
- Around line 37-45: The transaction block in OutboxEventScheduler (the
transactionTemplate.execute lambda that calls
outboxEventJpaRepository.findPendingForProcessing and
OutboxEventJpaEntity::markProcessing) can leave events stuck in PROCESSING if
InterruptedException causes an early return; change the lambda to not swallow
InterruptedException — catch it, call Thread.currentThread().interrupt(), and
rethrow as a RuntimeException (or propagate) so the transaction is rolled back
and markProcessing/saveAll are not committed; apply the same change to the
second transaction block around lines 57-60 to ensure interrupted threads do not
persist PROCESSING state.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: e909c6bc-bc0f-4fea-abf7-65f8c0642c31

📥 Commits

Reviewing files that changed from the base of the PR and between 63e0dbd and 29b107b.

📒 Files selected for processing (8)
  • .github/workflows/ci-prod.yml
  • src/main/java/com/michelet/reservation/application/reservation/ReservationQueryServiceImpl.java
  • src/main/java/com/michelet/reservation/config/RedisCacheConfig.java
  • src/main/java/com/michelet/reservation/infrastructure/outbox/OutboxEventScheduler.java
  • src/main/java/com/michelet/reservation/infrastructure/outbox/OutboxStatus.java
  • src/main/java/com/michelet/reservation/infrastructure/outbox/entity/OutboxEventJpaEntity.java
  • src/test/java/com/michelet/reservation/ReservationServiceApplicationTests.java
  • src/test/resources/application-test.yml

Comment thread .github/workflows/ci-prod.yml Resolved
@githyj-jang
githyj-jang merged commit 7797e21 into dev May 17, 2026
3 checks passed
@githyj-jang
githyj-jang deleted the chore/66-chore-ci-cd-및-prometheus-grafana branch May 18, 2026 02:11
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.

[REFACTOR] CacheErrorHandler 설명과 구현이 불일치문제 및 outbox 패턴 수정 사항

2 participants