[jboss-dev-forums] [Design of JBoss Transaction Services] - Re: Transaction Status.STATUS_ROLLEDBACK

mark.little@jboss.com do-not-reply at jboss.com
Thu Jul 10 08:14:24 EDT 2008


"huuskart" wrote : When a transaction timeout or some other unexpected situation occurs, the new JBoss transaction manager (in JBoss 4.2.1.GA) marks the transaction into state Status.STATUS_ROLLEDBACK.
  | 

Have you read the transaction standards with which we comply? They make it very clear that on a timeout you MUST roll back the transaction. They also make it very clear that data consistency is very important for transaction systems. So any low-level system exception, for instance, should force the transaction to roll back.

You should read the OTS specification as well as the JTA BTW. You can have those statuses on the thread in a multi-threaded environment where a different thread terminates the transaction.

You can always call suspend to remove the thread-to-transaction association. That's pretty simply to do and avoids worrying about breaking data consistency guarantees.

And finally: we throw IllegalStateException to allow a called to know that someone else has terminated the transaction. In a multi-threaded transaction that can be pretty important. But if you want to see a change, feel free to raise a Feature Request in JIRA.

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4163583#4163583

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4163583



More information about the jboss-dev-forums mailing list