[jboss-dev-forums] [Design of JBoss Transaction Services] - JTA/JTS thread disassociation semantics
jhalliday
do-not-reply at jboss.com
Wed Jan 21 12:13:20 EST 2009
With the local JTA impl, Transaction.[commit()|rollback()] don't do Thread disassociation, whilst TransactionManager.commit()|rollback()] do. Thus
transactionmanager.begin();
transactionmanager.getTransaction().rollback();
transactionmanager.getStatus();
results in STATUS_ROLLEDBACK. Which is all well and good.
Now substitute the JTS implementation and run the same code again.
Any guesses?
yup, that right: STATUS_NO_TRANSACTION.
This is compliant with the JTA spec, which mandates thread disassociation for the TransactionManager but says nothing about Transaction.
On the other hand its got the potential to break things. Indeed it does break the JCA, which has transaction context checking on the connections which is insufficiently robust to cope with this.
So, do we change the JTS or just document it and move on?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4203731#4203731
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4203731
More information about the jboss-dev-forums
mailing list