Introduction Oracle Sybase DB2 Informix Interbase Cloudscape Other Databases Problems
Introduction This document lists various issues involving XA support and databases. Oracle Tested Versions | | - | Oracle 8.1.7 with Oracle 8.1.7 JDBC driver | | - | Oracle 9.0.1 with Oracle 9.0.1 JDBC driver | Notes Oracle 8.1.7 and above is recommended for XA support. Oracle 8.1.6 has not been tested recently. Tyrex provides a workaround (tyrex.tm.impl.OracleXAResourceHelper) for known Oracle XA issues: | | - | Oracle 8.1.6 - Oracle XA resource transaction enlistment requires Oracle's implementation of javax.transaction.xa.Xid. | | - | XAResource.start(XAResource.TMJOIN) is not supported | | - | The Xid passed to Oracle must not have a null or empty branch qualifier | Issues | | - | XA resources delisted from a transaction with javax.transaction.xa.XAResource#TMSUCCESS cannot be used in another transaction until the first transaction ends. | | - | If an XA resource is delisted using javax.transaction.xa.XAResource#TMFAIL the database cannot be accessed for some amount of time (100 seconds in my tests) using a new XA resource from a new XA connection from either the existing XA data source or a new XA data source. Increasing the transaction timeout on the XA resource works occasionally. Best results were achieved using Thread.currentThread().sleep(100000); | Sybase Tested Versions | | - | Sybase 12.0 with Sybase JConnect 5.2 and 5.5 drivers | | - | Sybase 12.5 with Sybase JConnect 5.2 and 5.5 drivers | Issues | | - | The database hangs when the XA resource is delisted using javax.transaction.xa.XAResource#TMFAIL | DB2 Notes DB2 7.1 has not been tested recently The IBM app driver, that is type 2, provides XA support. There a bug in pooling mechanism that causes a NullpointerException when the logical connection is closed. Informix Tested Versions | | - | Unknown database version with JDBC 2.21 driver | Notes Thanks to Matias Salvador [mhs@sisa.com.ar] for Informix testing Tyrex provides a workaround (tyrex.tm.impl.InformixXAResourceHelper) for known Informix XA issues: | | - | XAResource.start(XAResource.TMJOIN) has problems with JDBC 2.21 driver | Interbase Notes The current JDBC driver (Version 2.0) does not support XA transactions yet. Cloudscape Notes Cloudscape 3.5 has not been tested recently Tyrex provides a workaround (tyrex.tm.impl.InformixXAResourceHelper) for known Informix XA issues: | | - | XAResource.start(XAResource.TMJOIN) has problems | Issues | | - | XA resources delisted from a transaction with javax.transaction.xa.XAResource#TMSUCCESS cannot be used in another transaction until the first transaction ends. | | - | There is a bug in the Cloudscape driver that causes infinite recursion during driver registration occasionally. | Other Databases If there are other databases with a XA implementation and a free download (very important) that people would like tested please send email to Tyrex Developer's Mailing List. Problems If there are other problems with the databases listed previously send a detailed email to Tyrex Developer's Mailing List. The email should contain: | | - | A stacktrace if one is available | | - | The database used, including version number | | - | The JDBC driver version number | | - | Instructions on how to reproduce the problem | |