[ 
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)

Reply via email to