강의

멘토링

커뮤니티

Inflearn コミュニティ Q&A

13months のプロフィール画像
13months

投稿した質問数

Spring DB 2編 - データアクセス活用技術

スプリングトランザクション伝播4 - 伝播例

커밋 순서를 바꾸면 안 되나요?

作成

·

618

3

log.info("외부 트랜잭션 커밋");
txManager.commit(outer);

log.info("내부 트랜잭션 커밋");
txManager.commit(inner);

 

논리 트랜잭션들이 모두 커밋돼야 물리 트랜잭션이 커밋돼야합니다.

 

그런데, 위처럼 순서를 바꿔서 진행해봤는데 외부 트랜잭션 커밋 로그 이후 바로 내부 트랜잭션 커밋 로그가 나오지 않고 데이터베이스에 접근하는것 같은 로그가 나옵니다.

 

내부 - 외부 순서대로 커밋해야 정상적으로 작동하는건가요?

 

감사합니다.

spring

回答 2

0

트랜젝션 전파 부분을 보시면 아시겠지만

외부를 커밋을 해버리면 물리적 커넥션 자체를 다 그냥 커밋해버리는거라... 내부 커밋이 아마 안될겁니다.

기실, 내부 커넥션을 커밋해버리면 그냥 내부적으로 존재하는 세이브포인트에 아 이 내부 트렌잭션 정상적으로 완료됬다고 찍히는 것으로만 알고 있습니다.

 

도움되셨으면 좋겠읍니다

13months のプロフィール画像
13months

投稿した質問数

質問する