Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[fix #184] 채팅 자동 거절 시 수정일 미변경 해결 #188

Merged
merged 12 commits into from
Jan 13, 2025

Conversation

dudxo
Copy link
Collaborator

@dudxo dudxo commented Jan 9, 2025

관련 이슈

📑 작업 상세 내용

  • 채팅 자동 거절 시 수정일 변경 실패 테스트 코드 작성

💫 작업 요약

🔍 중점적으로 리뷰 할 부분

  • 상황:
    • QA 일정 지연으로 인한 QA 채팅 요청 데이터가 Auth Rejected
    • Rejected 된 chat_inquriy의 updatedAt필드 갱신이 이루어지지 않음
    • @LastModifiedDate를 의심했는데 잘 이루어지고 있음.
  • 결론:
    • 테스트가 잘못 이루어졌는지 애매하네요. 테스트가 문제인지 QA 데이터 삽입 시 발생한 문제인지 찾아보고 있는데, 잘 되지 않아 도움 요청 드립니다.

@dudxo dudxo added the 🚨 fix 오류 수정 label Jan 9, 2025
@dudxo dudxo requested a review from hyun2371 January 9, 2025 12:48
@dudxo dudxo self-assigned this Jan 9, 2025
@dudxo dudxo linked an issue Jan 9, 2025 that may be closed by this pull request
Copy link

github-actions bot commented Jan 9, 2025

Code Coverage

Overall Project 83.94% -0.22% 🍏
Files changed 67.57% 🍏

File Coverage
QuestionPostQueryRepositoryImpl.java 96.94% 🍏
ChatInquiryService.java 93.4% 🍏
QuestionPostService.java 84.36% -1.45%
ChatInquiryQueryRepositoryImpl.java 60.8% 🍏
QuestionPostScheduler.java 0% -80%
ChatInquiryScheduler.java 0% -80%

Copy link

github-actions bot commented Jan 9, 2025

Test Results

 28 files   28 suites   14s ⏱️
142 tests 140 ✅ 2 💤 0 ❌
143 runs  141 ✅ 2 💤 0 ❌

Results for commit d2d1658.

♻️ This comment has been updated with latest results.

@hyun2371 hyun2371 changed the title [fix #186] 채팅 자동 거절 시 수정일 변경 실패 [fix #184] 채팅 자동 거절 시 수정일 미변경 해결 Jan 10, 2025
@hyun2371
Copy link
Member

hyun2371 commented Jan 11, 2025

PR보고 이것저것 테스트해보느라 늦어졌네요 ㅎㅎ

영속성 컨텍스트에서 관리되는 엔티티 객체들만 JPA Auditing이 적용된다고 합니다.
bulk update된 객체들은 영속성 컨텍스트에서 관리되지 않으니까 Auditing이 대상이 아닙니다.
따라서 updatedAt을 직접 업데이트 해줘야 할 것 같습니다..!

테스트에서 updatedAt 값이 최근 시간으로 표시되는 이유는 JPA Auditing 때문인듯 합니다!
ReflectionTestUtils으로 updatedAt 값을 수정하더라도, DB에 쿼리가 flush되는 시점에 Auditing에 의해 updatedAt 값이 현재 시간으로 덮어쓰이게 됩니다

@dudxo
Copy link
Collaborator Author

dudxo commented Jan 12, 2025

오호.. bulk 연산은 영속성에 의해 관리 되고 있는게 아니군요?
JPA를 확실하게 알고 쓰는게 중요하다는 생각이 드네요..

원인과 해결 방안을 같이 고민하고 알려주셔서 감사합니다!

@dudxo dudxo requested a review from hyun2371 January 13, 2025 06:17
@dudxo dudxo merged commit 840810d into dev Jan 13, 2025
3 checks passed
@dudxo dudxo deleted the fix/184/chat-inquiry-update-date branch January 13, 2025 07:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🚨 fix 오류 수정
Projects
None yet
Development

Successfully merging this pull request may close these issues.

🚨 채팅 자동 거절 시 수정일 변경 실패
2 participants