-
Bug
-
Resolution: Done
-
Critical
-
None
-
None
The transaction manager is allowed to create more than one Transaction object for an imported transaction, and has been observed to do so in at least distributed JTA cases if not other cases.
The JTA specification says that the equals method must return true for two objects that refer to the same transaction. Therefore OwnableReentrantLock must use equals() on its owner argument.
As an aside, that class should probably also null-check its owner object on lock() to avoid weird states.
- causes
-
JBEAP-10217 [GSS](7.1.0) StatefulSessionBean fail after 31 invocations
- Closed
-
JBEAP-10843 [GSS](7.0.z) StatefulSessionBean fail after 31 invocations
- Closed
- is cloned by
-
JBEAP-11646 OwnableReentrantLock can't recognize two different but equal transaction objects as the same transaction
- Closed
- relates to
-
JBTM-2848 Transaction .equals() methods do not comply with specification
- Closed