Heuristic completion: outcome state is mixed; nested exception is javax.transaction.HeuristicMixedException / TwoPhaseOutcome.HEURISTIC_HAZARD

2013. 6. 10. 15:27OpenSource/Spring MVC

반응형

 

환경 : Global Transaction을 사용 시 2개의 PostgreSQL을 사용 함.

 

주의 할 사항으로는 postgreSQL에서 config 파일인 data/postgresql.conf에서

max_prepared_transactions = 10         # zero disables the feature

을 양쪽 다 수정해주어야 한다. default가 0 일 것이다. 맨 아래에 참고 한 외국인 형님 사이트가 있다.

덕분에 수정하여 2pc 트랜잭션을 잘 할수 있었다^-^

[2013-06-10 13:53:10] [DEBUG] [BoardController.debug4Dev():497] - vo token : -1479550304
[2013-06-10 13:53:10] [DEBUG] [BoardFacade.debug4Dev():497] - --------Start insertXaBoard----------
[2013-06-10 13:53:10] [DEBUG] [BoardFacade.debug4Dev():497] - --------End insertXaBoard----------
[2013-06-10 13:53:10] [DEBUG] [BoardFacade.debug4Dev():497] - --------Start insertXaBoard----------
[2013-06-10 13:53:10] [DEBUG] [BoardFacade.debug4Dev():497] - --------End insertXaBoard----------
[2013-06-10 13:53:10] [ WARN] [loggerI18N.topLevelPrepare():281] - [com.arjuna.ats.internal.jta.resources.arjunacore.preparefailed] [com.arjuna.ats.internal.jta.resources.arjunacore.preparefailed] XAResourceRecord.prepare - prepare failed with exception XAException.XAER_RMERR
[2013-06-10 13:53:10] [ WARN] [arjLoggerI18N.End():1794] - [com.arjuna.ats.arjuna.coordinator.BasicAction_36] - BasicAction.End() - prepare phase of action-id ad6b856:c852:51b540bf:cb failed.
[2013-06-10 13:53:10] [ WARN] [arjLoggerI18N.End():1808] - [com.arjuna.ats.arjuna.coordinator.BasicAction_38] - Action Aborting
[2013-06-10 13:53:10] [ WARN] [loggerI18N.topLevelAbort():432] - [com.arjuna.ats.internal.jta.resources.arjunacore.rollbackxaerror] [com.arjuna.ats.internal.jta.resources.arjunacore.rollbackxaerror] XAResourceRecord.rollback - xa error XAException.XAER_RMERR
[2013-06-10 13:53:10] [ WARN] [arjLoggerI18N.doAbort():3299] - [com.arjuna.ats.arjuna.coordinator.BasicAction_52] - Top-level abort of action ad6b856:c852:51b540bf:cb received heuristic decision: TwoPhaseOutcome.HEURISTIC_HAZARD
[2013-06-10 13:53:10] [ERROR] [ERROR_LOGGER.error():460] - Heuristic completion: outcome state is mixed; nested exception is javax.transaction.HeuristicMixedException
[2013-06-10 13:53:10] [DEBUG] [BoardController.debug4Dev():497] - 생성된 토큰 : -776585088
[2013-06-10 13:53:10] [DEBUG] [BoardController.debug4Dev():497] - -------------------- start board controller -------------------
[2013-06-10 13:53:10] [DEBUG] [BoardController.debug4Dev():497] - searchText :
[2013-06-10 13:53:10] [DEBUG] [BoardController.debug4Dev():497] - pageIndex :1
[2013-06-10 13:53:10] [DEBUG] [BoardFacade.debug4Dev():497] - -------------------- start board facade -------------------
[2013-06-10 13:53:10] [DEBUG] [BoardFacade.debug4Dev():497] - boardListVo :

 

참고 사이트 : Thank you~:D

http://labnotes.decampo.org/2013/03/heuristicmixedexception-with-postgresql.html

반응형