매니저 등록을 별개로 로그 테이블에는 항상 로그가 남도록 만들었다.


예외가 발생하도록 예외 "담당자를 등록하려고 하는 유저가 유효하지 않거나, 일정을 만든 유저가 아닙니다."가 발생한 후에 insert 쿼리가 발생했지만 테이블에 데이터가 들어가지 않았다.


기본 트랜잭션 롤백 규칙
예외 처리하는 InvalidRequestException는 RuntimeException를 상속받았다.

트랜잭션 (@Transactional) 안에서 RuntimeException 이 발생하면 롤백이 발생하여 롤백 예외가 발생한다.
즉, InvalidRequestException가 발생하면 롤백이 발생한다.
해당 블로그를 통해 문제 발생이유를 알 수 있었다.
https://devlog-wjdrbs96.tistory.com/351
그래서 로그 저장 로직을 별도의 서비스로 분리하여, 그 서비스에 @Transactional(propagation = Propagation.REQUIRES_NEW)를 적용를 적용했다.

다시 한 번 예외처리가 발생했을 때, 로그 테이블에 데이터가 잘 commit되어 있다.
