[jboss-svn-commits] JBL Code SVN: r6468 - labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Sep 29 10:08:44 EDT 2006
Author: kevin.conner at jboss.com
Date: 2006-09-29 10:08:42 -0400 (Fri, 29 Sep 2006)
New Revision: 6468
Modified:
labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/TransactionImple.java
Log:
Fix for thread disassociation when transaction reaper terminates the transaction. JBTM-139
Modified: labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/TransactionImple.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/TransactionImple.java 2006-09-29 13:41:11 UTC (rev 6467)
+++ labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/TransactionImple.java 2006-09-29 14:08:42 UTC (rev 6468)
@@ -1162,23 +1162,22 @@
jtaLogger.logger.debug(DebugLevel.FUNCTIONS, VisibilityLevel.VIS_PUBLIC, com.arjuna.ats.jta.logging.FacilityCode.FAC_JTA, "TransactionImple.commitAndDisassociate");
}
- if (_theTransaction != null)
- {
- switch (_theTransaction.status())
- {
- case ActionStatus.RUNNING:
- case ActionStatus.ABORT_ONLY:
- break;
- default:
- throw new IllegalStateException(
- jtaLogger.logMesg.getString("com.arjuna.ats.internal.jta.transaction.arjunacore.inactive"));
- }
- }
-
- try
- {
- if (_theTransaction != null)
- {
+ try
+ {
+ if (_theTransaction != null)
+ {
+ switch (_theTransaction.status())
+ {
+ case ActionStatus.RUNNING:
+ case ActionStatus.ABORT_ONLY:
+ break;
+ case ActionStatus.ABORTED:
+ _theTransaction.abort() ;
+ default:
+ throw new IllegalStateException(
+ jtaLogger.logMesg.getString("com.arjuna.ats.internal.jta.transaction.arjunacore.inactive"));
+ }
+
switch (_theTransaction.commit(true))
{
case ActionStatus.COMMITTED:
@@ -1200,18 +1199,6 @@
throw new IllegalStateException(
jtaLogger.logMesg.getString("com.arjuna.ats.internal.jta.transaction.arjunacore.inactive"));
}
- catch (javax.transaction.HeuristicMixedException ex)
- {
- throw ex;
- }
- catch (RollbackException ex)
- {
- throw ex;
- }
- catch (IllegalStateException ex)
- {
- throw ex;
- }
finally
{
TransactionImple.removeTransaction(this);
More information about the jboss-svn-commits
mailing list