-
Type:
Bug
-
Status: Closed (View Workflow)
-
Priority:
Major
-
Resolution: Done
-
Affects Version/s: EAP 5.0.0
-
Fix Version/s: EAP_EWP 5.1.1
-
Component/s: System
-
Labels:None
-
Release Notes Text:
-
Release Notes Docs Status:Documented as Resolved Issue
When using Arjuna, QueuedPessimisticEJBLock does not always properly detect that a waiting tx has timed out. The problem is that QueuedPessimisticEJBLock was written for the old TM, which did not rollback transactions on timeout, but only marked them for rollback. Now that Arjuna is in play, it has to check for rolled back transactions too.
The isTxExpired() method should be changed to something like this:
protected boolean isTxExpired(Transaction miTx) throws Exception {
if (miTx != null
&& (miTx.getStatus() == Status.STATUS_MARKED_ROLLBACK || miTx.getStatus() == Status.STATUS_ROLLEDBACK))
return false;
}
- cloned from
-
JBPAPP-5607 Problem with QueuedPessimisticEJBLock and Arjuna
-
- Resolved
-
- incorporates
-
JBAS-6348 Problem with QueuedPessimisticEJBLock and Arjuna
-
- Closed
-