[jboss-user] [JCA/JBoss] - Re: Hibernate+JBossTS+SybaseXA=XAException

roist do-not-reply at jboss.com
Thu Mar 15 12:27:50 EDT 2007


simple explanation: 

sybase XADatasource Driver is not 100% XA-compliant. 
according to my bible: (http://docs.jboss.org/jbossas/jboss4guide/r5/html/ch7.chapt.html#ch7.jdbc.sect)

anonymous wrote : 
  | track-connection-by-tx: Specifying a true value for this element makes the connection manager keep an xid to connection map and only put the connection back in the pool when the transaction completes and all the connection handles are closed or disassociated (by the method calls returning). As a side effect, we never suspend and resume the xid on the connection's XAResource. This is the same connection tracking behavior used for local transactions.
  | 
  | The XA spec implies that any connection may be enrolled in any transaction using any xid for that transaction at any time from any thread (suspending other transactions if necessary). The original JCA implementation assumed this and aggressively delisted connections and put them back in the pool as soon as control left the EJB they were used in or handles were closed. Since some other transaction could be using the connection the next time work needed to be done on the original transaction, there is no way to get the original connection back. It turns out that most XADataSource driver vendors do not support this, and require that all work done under a particular xid go through the same connection.

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

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



More information about the jboss-user mailing list