When BridgeParticipantAT receives prepare, participant should
associate current thread with corresponding JTA transaction
-------------------------------------------------------------------------------------------------------------------------
Key: JBTM-329
URL:
https://jira.jboss.org/jira/browse/JBTM-329
Project: JBoss Transaction Manager
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: XTS
Environment: JBoss-4.2.1.GA, JBossTS-4.2.3.SP7
Reporter: Pavel Kadlec
Assignee: Jonathan Halliday
Fix For: 4.7.0
When participant receives prepare from coordinator, it calls prepare on jta transaction.
SubordinateAtomicAction.doPrepare then calls beforeCompletion() method. Hibernate
registers Synchronization object which is called in beforeCompletion() method. In that
synchronization object, when hibernate cannot find transaction on current thread, it
flushes all entites into database, which is bad.
When Hibernate cannot find transaction on thread, it logs WARN
[AbstractEntityManagerImpl] Transaction not available on beforeCompletionPhase: assuming
valid
Fix is easy, BridgeParticipantAT should associate current thread with the corresponding
JTA transaction. And finally it should suspend that JTA transaction.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: