on ‎2005 Mar 24 6:01 PM
Hi,
I get "Transaction system failure" exception when I attempt to call for example an ejb method with SUPPORTS attribute set and right after calling an ejb method with transaction REQUIRED. This is happening XA Driver (on oracle). It does not seem to be working as designed :). I think the problem occurs in transactions after each time Datasource was used in a non-transactional context.
EnableLocalResourceInOTS is true.
To illustrate the problem please the test snippet below that is failing:
public void testSupportsAndRequired() throws Exception {
// calls an ejb method with SUPPORTS attr
callEJBMethod1();
// calls an ejb method with REQUIRED attr
callEJBMethod2();
}Below is jdbc 2.0 section from data_sources.xml.
<jdbc-2.0>
<xads-class-name>
oracle.jdbc.xa.client.OracleXADataSource
</xads-class-name>
<properties>
<property>
<property-name>
URL
</property-name>
<property-value>
jdbc:oracle:thin:@app02:1521:VP40
</property-value>
</property>
<property>
<property-name>
Password
</property-name>
<property-value encrypted="true">
5e695d694c5c695d4b
</property-value>
</property>
<property>
<property-name>
User
</property-name>
<property-value>
vm32wip
</property-value>
</property>
</properties>
</jdbc-2.0>
Request clarification before answering.
Hi Mikhail,
Could you paste the whole stack trace of the exception?
Best regards,
Vladimir
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Vladimir,
The trace is pretty huge. CertificationBO in the trace is the bean that has all methods TX_REQUIRED.
Regards,
Mikhail
java.rmi.RemoteException: com.sap.engine.services.ejb.exceptions.BaseRemoteException: Transaction system failure in method com.genrad.app.core.env.server.CertificationBOObjectImpl30.dbRead(com.genrad.frame.Data).
at com.genrad.app.core.env.server.CertificationBOObjectImpl30.dbRead(CertificationBOObjectImpl30.java:915)
at com.genrad.app.core.env.server.CertificationBOObjectImpl30p4_Skel.dispatch(CertificationBOObjectImpl30p4_Skel.java:490)
at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:268)
at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:165)
at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:102)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:140)
Caused by: com.sap.engine.services.ts.exceptions.BaseSystemException: Exception ( SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca000ffffffc6 ) in rollback.
at com.sap.engine.services.ts.jta.impl.TransactionImpl.rollback(TransactionImpl.java:623)
at com.sap.engine.services.ts.jta.impl.TransactionImpl.commit(TransactionImpl.java:243)
at com.genrad.app.core.env.server.CertificationBOObjectImpl30.dbRead(CertificationBOObjectImpl30.java:912)
... 10 more
Caused by: javax.transaction.xa.XAException
at oracle.jdbc.xa.OracleXAResource.disallowLocalTxnMode(OracleXAResource.java:1045)
at oracle.jdbc.xa.OracleXAResource.suspendStacked(OracleXAResource.java:227)
at oracle.jdbc.xa.client.OracleXAResource.rollback(OracleXAResource.java:920)
at com.sap.engine.services.ts.jta.impl.TransactionImpl.rollback(TransactionImpl.java:563)
... 12 more
; nested exception is:
javax.transaction.SystemException: com.sap.engine.services.ts.exceptions.BaseSystemException: Exception ( SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca000ffffffc6 ) in rollback.
at com.sap.engine.services.ts.jta.impl.TransactionImpl.rollback(TransactionImpl.java:623)
at com.sap.engine.services.ts.jta.impl.TransactionImpl.commit(TransactionImpl.java:243)
at com.genrad.app.core.env.server.CertificationBOObjectImpl30.dbRead(CertificationBOObjectImpl30.java:912)
at com.genrad.app.core.env.server.CertificationBOObjectImpl30p4_Skel.dispatch(CertificationBOObjectImpl30p4_Skel.java:490)
at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:268)
at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:165)
at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:102)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:140)
Caused by: javax.transaction.xa.XAException
at oracle.jdbc.xa.OracleXAResource.disallowLocalTxnMode(OracleXAResource.java:1045)
at oracle.jdbc.xa.OracleXAResource.suspendStacked(OracleXAResource.java:227)
at oracle.jdbc.xa.client.OracleXAResource.rollback(OracleXAResource.java:920)
at com.sap.engine.services.ts.jta.impl.TransactionImpl.rollback(TransactionImpl.java:563)
... 12 more
at com.sap.engine.services.ejb.exceptions.BaseRemoteException.writeReplace(BaseRemoteException.java:276)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.io.ObjectStreamClass.invokeWriteReplace(ObjectStreamClass.java:896)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1011)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:278)
at com.sap.engine.services.rmi_p4.DispatchImpl.throwException(DispatchImpl.java:120)
at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:270)
at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:165)
at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:102)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:140)
Caused by: javax.transaction.SystemException: com.sap.engine.services.ts.exceptions.BaseSystemException: Exception ( SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca000ffffffc6 ) in rollback.
at com.sap.engine.services.ts.jta.impl.TransactionImpl.rollback(TransactionImpl.java:623)
at com.sap.engine.services.ts.jta.impl.TransactionImpl.commit(TransactionImpl.java:243)
at com.genrad.app.core.env.server.CertificationBOObjectImpl30.dbRead(CertificationBOObjectImpl30.java:912)
at com.genrad.app.core.env.server.CertificationBOObjectImpl30p4_Skel.dispatch(CertificationBOObjectImpl30p4_Skel.java:490)
at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:268)
at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:165)
at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:102)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:140)
Caused by: javax.transaction.xa.XAException
at oracle.jdbc.xa.OracleXAResource.disallowLocalTxnMode(OracleXAResource.java:1045)
at oracle.jdbc.xa.OracleXAResource.suspendStacked(OracleXAResource.java:227)
at oracle.jdbc.xa.client.OracleXAResource.rollback(OracleXAResource.java:920)
at com.sap.engine.services.ts.jta.impl.TransactionImpl.rollback(TransactionImpl.java:563)
... 12 more
at com.sap.engine.services.ts.exceptions.BaseSystemException.writeReplace(BaseSystemException.java:182)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.io.ObjectStreamClass.invokeWriteReplace(ObjectStreamClass.java:896)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1011)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1332)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1304)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1247)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)
... 11 more
Hi Mikhail,
This XAException in the OracleXAResource talks nothing to me. I asked a colleague of mine to have a look at this issue and he'll contact you soon. Meanwhile, check in the defaultTrace.trc file - there should be another exception from the XAResource.prepare() method.
Best regards,
Vladimir
Thanks, Valdimir.
I looked in the log and there is some more info about failing to locate DelistResource manager for XA.
Mikhail
here it is:
[code]#1.5#C000C0A82C1C004A0000000000000E0C0003F3227FEC770D#1111754430770#com.sap.engine.services.ts#sap.com/VisipriseMfg#com.sap.engine.services.ts#Guest#2#SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca0002####SAPEngine_Application_Thread[impl:3]_23##0#0#Error#1#/System/Server#Java#ts_0011#com.sap.engine.services.ts.exceptions.TSResourceBundle#DelistResource resource manager for the XAResource was not found.#
#1.5#C000C0A82C1C004A0000000100000E0C0003F3227FEC7E83#1111754430786#com.sap.engine.services.ts#sap.com/VisipriseMfg#com.sap.engine.services.ts#Guest#2#SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca0002####SAPEngine_Application_Thread[impl:3]_23##0#0#Error#1#/System/Audit#Java###Exception #1#com.sap.engine.services.ts.exceptions.BaseIllegalStateException: DelistResource resource manager for the XAResource was not found. at com.sap.engine.services.ts.jta.impl.TransactionImpl.delistResource(TransactionImpl.java:383) at com.sap.engine.services.connector.resource.impl.ResourceSetImpl.remove(ResourceSetImpl.java:307) at com.sap.engine.services.connector.resource.impl.HandleWrapper.removeItselfFromResourceSet(HandleWrapper.java:105) at com.sap.engine.services.connector.resource.impl.MCEventHandler.connectionClosed(MCEventHandler.java:386) at com.sap.engine.services.dbpool.spi.LocalTXManagedConnectionImpl.removeConnectionHandle(LocalTXManagedConnectionImpl.java:314) at com.sap.engine.services.dbpool.cci.ConnectionHandle.close(ConnectionHandle.java:249) at com.genrad.frame.AbstractSqlImplementation.executeQuery(AbstractSqlImplementation.java:92) at com.genrad.frame.SystemBase.executeQuery(SystemBase.java:754) at com.genrad.frame.SystemBase.executeQuery(SystemBase.java:730) at com.genrad.frame.BasicBOBean.recursiveRead(BasicBOBean.java:2015) at com.genrad.frame.BasicBOBean.dbRead(BasicBOBean.java:1764) at com.genrad.frame.BasicBOBean.dbRead(BasicBOBean.java:1683) at com.genrad.frame.BasicBOBean.dbRead(BasicBOBean.java:1635) at com.genrad.app.core.env.server.CertificationBOObjectImpl30.dbRead(CertificationBOObjectImpl30.java:827) at com.genrad.app.core.env.server.CertificationBOObjectImpl30p4_Skel.dispatch(CertificationBOObjectImpl30p4_Skel.java:490) at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:268) at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:165) at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:102) at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37) at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:140) # #1.5#C000C0A82C1C004A0000000200000E0C0003F3227FEC823B#1111754430786#com.sap.engine.services.connector#sap.com/VisipriseMfg#com.sap.engine.services.connector#Guest#2#SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca0002####SAPEngine_Application_Thread[impl:3]_23##0#0#Error##Plain###Error during connection close : com.sap.engine.services.ts.exceptions.BaseIllegalStateException: DelistResource resource manager for the XAResource was not found.# #1.5#C000C0A82C1C004A0000000300000E0C0003F3227FEC8510#1111754430786#com.sap.engine.services.ts#sap.com/VisipriseMfg#com.sap.engine.services.ts#Guest#2#####SAPEngine_Application_Thread[impl:3]_23##0#0#Error#1#/System/Server#Java#ts_0013#com.sap.engine.services.ts.exceptions.TSResourceBundle#Exception ( SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca0002 ) in rollback.#1#SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca0002# #1.5#C000C0A82C1C004A0000000400000E0C0003F3227FEC8E0A#1111754430786#com.sap.engine.services.ts#sap.com/VisipriseMfg#com.sap.engine.services.ts#Guest#2#####SAPEngine_Application_Thread[impl:3]_23##0#0#Error#1#/System/Audit#Java###Exception #1#com.sap.engine.services.ts.exceptions.BaseSystemException: Exception ( SAP J2EE Engine JTA Transaction : 179ffffff92ffffffca0002 ) in rollback.
at com.sap.engine.services.ts.jta.impl.TransactionImpl.rollback(TransactionImpl.java:623)
at com.sap.engine.services.ts.jta.impl.TransactionImpl.commit(TransactionImpl.java:243)
at com.genrad.app.core.env.server.CertificationBOObjectImpl30.dbRead(CertificationBOObjectImpl30.java:912)
at com.genrad.app.core.env.server.CertificationBOObjectImpl30p4_Skel.dispatch(CertificationBOObjectImpl30p4_Skel.java:490)
at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:268)
at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:165)
at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:102)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:140)
Caused by: javax.transaction.xa.XAException
at oracle.jdbc.xa.OracleXAResource.disallowLocalTxnMode(OracleXAResource.java:1045)
at oracle.jdbc.xa.OracleXAResource.suspendStacked(OracleXAResource.java:227)
at oracle.jdbc.xa.client.OracleXAResource.rollback(OracleXAResource.java:920)
at com.sap.engine.services.ts.jta.impl.TransactionImpl.rollback(TransactionImpl.java:563)
... 12 more
[/code]
| User | Count |
|---|---|
| 7 | |
| 5 | |
| 5 | |
| 4 | |
| 4 | |
| 4 | |
| 3 | |
| 2 | |
| 2 | |
| 2 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.