Problem with QueuedPessimisticEJBLock and Arjuna
------------------------------------------------
Key: JBAS-8753
URL:
https://issues.jboss.org/browse/JBAS-8753
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Transaction Manager Integration (Arjuna)
Affects Versions: JBossAS-4.2.3.GA
Reporter: Brad Maxwell
Assignee: Alexey Loubyansky
Fix For: 6.0.0.Final
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 true;
}
return false;
}
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira