UnexpectedRollbackException

Eaden·2023년 2월 1일
0

중첩 트랜잭션에서 전파옵션을 REQUIRED(기본)로 할 경우 트랜잭션 중 1개라도 실패시 전체가 롤백 된다.

이때 자식 트랜잭션 중 RuntimeException 발생에 대해 try/catch 하고 Throwable 하지 않더라도 위 롤백처리를 동일하게 이루어진다. 트랜잭션 내 rollback-only 체크됨
그리고 별다른 조치가 없다면 UnexpectedRollbackException 이 발생한다.

  • RuntimeException 은 되도록 try/catch 하지 말자
  • 정 위와같은 상황을 만들고자 할 경우 해당 트랜잭션 로직의 전파옵션을 REQUIRED_NEW 로 설정하도록 한다

참조링크

profile
일단 기록하자!!!

0개의 댓글