-
Feature Request
-
Resolution: Done
-
Major
-
5.0.3
-
None
I've got an exception java.sql.SQLException: ConnectionImple.registerDatabase - ARJUNA017017: enlist of resource failed while preparing statement in the second connection within the same oracle instance but other schema.
Whole stack trace:
oracle.jdbc.xa.OracleXAException at oracle.jdbc.xa.OracleXAResource.checkError(OracleXAResource.java:1110) at oracle.jdbc.xa.client.OracleXAResource.start(OracleXAResource.java:240) at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.enlistResource(TransactionImple.java:741) at com.arjuna.ats.internal.jdbc.ConnectionImple.registerDatabase(ConnectionImple.java:983) at com.arjuna.ats.internal.jdbc.ConnectionImple.prepareStatement(ConnectionImple.java:179) at SimpleJdbcTest.insert(SimpleJdbcTest.java:46) at SimpleJdbcTest.main(SimpleJdbcTest.java:36) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134) java.sql.SQLException: ConnectionImple.registerDatabase - ARJUNA017017: enlist of resource failed at com.arjuna.ats.internal.jdbc.ConnectionImple.registerDatabase(ConnectionImple.java:1003) at com.arjuna.ats.internal.jdbc.ConnectionImple.prepareStatement(ConnectionImple.java:179) at SimpleJdbcTest.insert(SimpleJdbcTest.java:46) at SimpleJdbcTest.main(SimpleJdbcTest.java:36)
(Detail log and SSCCE are attached).
I use jboss transaction manager in standaloine application just to test jboss JTA implementation. The same code works well if one and second data sources use own (different) database instances.
I note that atomikos and bitronix JTA implementation works correctly in the same environment irrespectively single oracle instance is used or not.
I found similar problem here.