[ https://issues.apache.org/jira/browse/DBCP-356?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Phil Steitz closed DBCP-356. ---------------------------- > ManagedDataSource doesn't work with an active transaction in progress on IBM > JDK 6+ > ----------------------------------------------------------------------------------- > > Key: DBCP-356 > URL: https://issues.apache.org/jira/browse/DBCP-356 > Project: Commons Dbcp > Issue Type: Bug > Affects Versions: 1.3, 1.4 > Environment: IBM JDK 6 > java version "1.6.0" > Java(TM) SE Runtime Environment (build pwa6460sr9fp1-20110208_03(SR9 FP1)) > IBM J9 VM (build 2.4, JRE 1.6.0 IBM J9 2.4 Windows 7 amd64-64 > jvmwa6460sr9-20110203_74623 (JIT enabled, AOT enabled) > J9VM - 20110203_074623 > JIT - r9_20101028_17488ifx3 > GC - 20101027_AA) > JCL - 20110203_01 > commons-dbcp of version 1.3 / 1.4 > Reporter: an envy guest > Labels: ibm, xaresource > Fix For: 1.3.1, 1.4.1 > > Attachments: TransactionRegistry.java.patch, > TransactionRegistry.java.patch, commons-dbcp-TransactionRegistry.diff > > > When using IBM JDK 6+ and trying to build commons-dbcp, these tests fail: > org.apache.commons.dbcp.managed.TestBasicManagedDataSource > org.apache.commons.dbcp.managed.TestManagedDataSourceInTx > with error: > java.sql.SQLException: Connection does not have a registered XAResource null, > UserName=null, null > at > org.apache.commons.dbcp.managed.TransactionRegistry.getXAResource(TransactionRegistry.java:81) > at > org.apache.commons.dbcp.managed.TransactionContext.setSharedConnection(TransactionContext.java:88) > at > org.apache.commons.dbcp.managed.ManagedConnection.updateTransactionStatus(ManagedConnection.java:131) > at > org.apache.commons.dbcp.managed.ManagedConnection.<init>(ManagedConnection.java:55) > at > org.apache.commons.dbcp.managed.ManagedDataSource.getConnection(ManagedDataSource.java:76) > at > org.apache.commons.dbcp.managed.TestManagedDataSource.getConnection(TestManagedDataSource.java:53) > at > org.apache.commons.dbcp.TestConnectionPool.newConnection(TestConnectionPool.java:81) > at > org.apache.commons.dbcp.managed.TestManagedDataSourceInTx.testMaxActive(TestManagedDataSourceInTx.java:102) > When used in conjunction with OpenEJB 3.1.4 examples, the error is the same. > The problem disappears when switched to Oracle JDK 1.6.24 (so, all tests are > passed and OpenEJB examples are working). > I beleive this has something to do with differences in > java.lang.ref.WeakReference implementations between IBM and Oracle JDKs, > which was already discussed here: > http://www.mail-archive.com/dev@commons.apache.org/msg13107.html -- This message was sent by Atlassian JIRA (v6.2#6252)