[jboss-dev-forums] [Design of Messaging on JBoss (Messaging/JBoss)] - Re: Bug in transactional delivery in an MDB

adrian@jboss.org do-not-reply at jboss.com
Mon Jan 22 06:15:27 EST 2007


"ovidiu.feodorov at jboss.com" wrote : 
  | On one hand, the fixes for JBMESSAGING-410 and JBMESSAGING-520 insure that a JMS session created using a JMS connection produced by the JCA connection factory behaves as NON-TRANSACTED in absence of a global JTA transaction. 
  | 
  | This is an intuitive behavior, users rely on it, JBossMQ behaves similarly, and reportedly, other JMS providers as well.
  | 

There is actually nothing in the spec about this behaviour.
The XA stuff is massively underspecified in the JMS spec.
And of course it is optional whether a JMS impl supports XA.

The JBossMQ behaviour is to assume that an XASession behaves like
AUTO_ACKNOWLEDGE when the XASession is not enlisted in a JTA transaction.
(Some JMS implements throw an exception in this case).

There is one exception to this. When the XASession is being used as part of
a ServerSessionPool, the semantics need to be receive then enlist.
So for this, the XASession behaves like there is a transaction, it will be told
later what XID to use for the 2PC protocol.

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

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



More information about the jboss-dev-forums mailing list