[
https://jira.jboss.org/jira/browse/JBAS-6116?page=com.atlassian.jira.plug...
]
Galder Zamarreno updated JBAS-6116:
-----------------------------------
Summary: UserTransaction.rollback()/commit() are not fully compliant with the JTA
standard (was: UserTransaction.rollback() is not compliant with the JTA standard)
Description:
JTA spec says the following UserTransaction.rollback():
"Roll back the transaction associated with the current thread. When this method
completes, the thread becomes
associated with no transaction."
Currently though, the transaction propagation context (tpc) is only cleared upon
rollback() being called successfully.
If any exceptions arise from the rollback() call on the server, the tpc is not cleared,
leaving it lingering. A finally section
needs to be added to ClientUserTransaction.rollback() so that the tpc is cleared.
Similar thing happens with UserTransaction.commit()L
"When this method completes, the thread becomes associated with no transaction.
"
Currently though, the transaction propagation context (tpc) is only cleared upon commit()
being called successfully
or upon a RollbackException. If any exceptions arise from the commit() call on the server,
the tpc is not cleared, leaving
it lingering. A finally section needs to be added to ClientUserTransaction.commit() so
that the tpc is cleared.
Besides, handling of org.jboss.remoting.CannotConnectException needs adding to
rollback()/commit() to react in the
same way as for RemoteException.
was:
JTA spec says the following UserTransaction.rollback():
"Roll back the transaction associated with the current thread. When this method
completes, the thread becomes
associated with no transaction."
Currently though, the transaction propagation context (tpc) is only cleared upon
rollback() being called successfully.
If any exceptions arise from the rollback() call on the server, the tpc is not cleared,
leaving it lingering.
So, handling of SecurityException, SystemException, IllegalStateException, RemoteException
and Exception should
clear the tpc. Besides, handling of org.jboss.remoting.CannotConnectException needs adding
to react in the same
way as for RemoteException.
UserTransaction.rollback()/commit() are not fully compliant with the
JTA standard
---------------------------------------------------------------------------------
Key: JBAS-6116
URL:
https://jira.jboss.org/jira/browse/JBAS-6116
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: Transaction Manager (JBossTM)
Affects Versions: JBossAS-4.2.3.GA, JBossAS-5.0.0.CR2
Reporter: Galder Zamarreno
Assignee: Galder Zamarreno
JTA spec says the following UserTransaction.rollback():
"Roll back the transaction associated with the current thread. When this method
completes, the thread becomes
associated with no transaction."
Currently though, the transaction propagation context (tpc) is only cleared upon
rollback() being called successfully.
If any exceptions arise from the rollback() call on the server, the tpc is not cleared,
leaving it lingering. A finally section
needs to be added to ClientUserTransaction.rollback() so that the tpc is cleared.
Similar thing happens with UserTransaction.commit()L
"When this method completes, the thread becomes associated with no transaction.
"
Currently though, the transaction propagation context (tpc) is only cleared upon commit()
being called successfully
or upon a RollbackException. If any exceptions arise from the commit() call on the
server, the tpc is not cleared, leaving
it lingering. A finally section needs to be added to ClientUserTransaction.commit() so
that the tpc is cleared.
Besides, handling of org.jboss.remoting.CannotConnectException needs adding to
rollback()/commit() to react in the
same way as for RemoteException.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira