• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

XA-Transaction Error with WAS 6.1, MQ (SIB) and Oracle 10g

 
Ranch Hand
Posts: 76
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi everybody.

We have the following scenario:

We use a JEE-application that works on my colleagues computer, but not on mine. We have installed the same software versions, same sourcecode through subversion and same application server profile. We also do not find any differences concerning the configuration.

We use WAS 6.1.0.9 (included in RAD 7) with its default v5 messaging provider (through SIB), Oracle 10.2.0.3 as database and IBM client application for JMS to send the request message. I send a JMS message to the SIB queue, it is received, the business logic is executed (through an MDB and a stateless - both EJB 2.1), and then the answer should be sent to the response queue. While trying to send the response, the following exception occurs and a rollback is done.

Again: The same stuff (WAS profile, sourcecode, db schemas, ...) works at my colleagues computer... I searched and tried many proposals in this forum and other forums, but nothing helped, e.g.:
- XA JDBC resource is configured correctly, test-connection works.
- activating XA for the oracle database by using some sql scripts as described on the ibm website
- deleting the translong folder: C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\tranlog\CellE2EFM\NodeE2EFM\server1\transaction\tranlog
- setting the custom property "transactionBranchesLooselyCoupled" to true
- reinstalling the whole oracle db and re-doing all necessary configuration
- re-importing the was profile


Can you pleas help me - what else can I try do resolve the problem?

Here is the exception (it seems that there is a problem during the prepare phase of the XA / 2PC transaction at the MQ-XA-resource):

[27.04.10 08:05:29:915 GMT] 000000b3 XATransaction E J2CA0027E: Beim Aufrufen von prepare für einen XA-Ressourcenadapter aus Datenquelle JMS$toTimbHistoryReplyQueueCF$JMSManagedConnection@1661887246 ist in der Transaktion mit der ID {XidImpl: formatId(57415344), gtrid_length(36), bqual_length(54), data(000001283e4c84dd0000000100000003f8919396faba5619243d0afaa6e9f20769e68d80000001283e4c84dd0000000100000003f8919396faba5619243d0afaa6e9f20769e68d80000000010000000000000000000000000002)} eine Ausnahme eingetreten: javax.transaction.xa.XAException: XA-Operation fehlgeschlagen, siehe errorCode
at com.ibm.mq.MQXAResource.prepare(MQXAResource.java:254)
at com.ibm.ejs.jms.JMSManagedSession$JMSXAResource.prepare(JMSManagedSession.java:1503)
at com.ibm.ejs.j2c.XATransactionWrapper.prepare(XATransactionWrapper.java:1110)
at com.ibm.ws.Transaction.JTA.JTAXAResourceImpl.prepare(JTAXAResourceImpl.java:210)
at com.ibm.ws.Transaction.JTA.RegisteredResources.prepareResource(RegisteredResources.java:1387)
at com.ibm.ws.Transaction.JTA.RegisteredResources.distributePrepare(RegisteredResources.java:1690)
at com.ibm.ws.Transaction.JTA.TransactionImpl.prepareResources(TransactionImpl.java:2076)
at com.ibm.ws.Transaction.JTA.TransactionImpl.stage1CommitProcessing(TransactionImpl.java:1637)
at com.ibm.ws.Transaction.JTA.TransactionImpl.processCommit(TransactionImpl.java:1593)
at com.ibm.ws.Transaction.JTA.TransactionImpl.commit(TransactionImpl.java:1528)
at com.ibm.ws.Transaction.JTA.TranManagerImpl.commit(TranManagerImpl.java:237)
at com.ibm.ws.Transaction.JTA.TranManagerSet.commit(TranManagerSet.java:162)
at com.ibm.ejs.csi.TranStrategy.commit(TranStrategy.java:756)
at com.ibm.ejs.csi.TranStrategy.postInvoke(TranStrategy.java:181)
at com.ibm.ejs.csi.TransactionControlImpl.postInvoke(TransactionControlImpl.java:581)
at com.ibm.ejs.container.EJSContainer.postInvoke(EJSContainer.java:3910)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:107)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:132)
at com.ibm.ejs.jms.listener.ServerSession.run(ServerSession.java:481)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1469)
.
[27.04.10 08:05:29:930 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.29_2.txt für das Ereignis geöffnet.
[27.04.10 08:05:29:977 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.29_2.txt für das Ereignis geschlossen.
[27.04.10 08:05:30:040 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_0.txt für das Ereignis geöffnet.
[27.04.10 08:05:30:055 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_0.txt für das Ereignis geschlossen.
[27.04.10 08:05:30:055 GMT] 000000b3 RegisteredRes E WTRN0046E: Der Versuch des Transaction Manager, eine Transaktionsressource vorzubereiten, hat zu einem Fehler geführt. Der Fehlercode ist 2. Der Stack-Trace zur Ausnahme wird im Folgenden angezeigt: javax.transaction.xa.XAException: XA-Operation fehlgeschlagen, siehe errorCode
at com.ibm.mq.MQXAResource.prepare(MQXAResource.java:254)
at com.ibm.ejs.jms.JMSManagedSession$JMSXAResource.prepare(JMSManagedSession.java:1503)
at com.ibm.ejs.j2c.XATransactionWrapper.prepare(XATransactionWrapper.java:1110)
at com.ibm.ws.Transaction.JTA.JTAXAResourceImpl.prepare(JTAXAResourceImpl.java:210)
at com.ibm.ws.Transaction.JTA.RegisteredResources.prepareResource(RegisteredResources.java:1387)
at com.ibm.ws.Transaction.JTA.RegisteredResources.distributePrepare(RegisteredResources.java:1690)
at com.ibm.ws.Transaction.JTA.TransactionImpl.prepareResources(TransactionImpl.java:2076)
at com.ibm.ws.Transaction.JTA.TransactionImpl.stage1CommitProcessing(TransactionImpl.java:1637)
at com.ibm.ws.Transaction.JTA.TransactionImpl.processCommit(TransactionImpl.java:1593)
at com.ibm.ws.Transaction.JTA.TransactionImpl.commit(TransactionImpl.java:1528)
at com.ibm.ws.Transaction.JTA.TranManagerImpl.commit(TranManagerImpl.java:237)
at com.ibm.ws.Transaction.JTA.TranManagerSet.commit(TranManagerSet.java:162)
at com.ibm.ejs.csi.TranStrategy.commit(TranStrategy.java:756)
at com.ibm.ejs.csi.TranStrategy.postInvoke(TranStrategy.java:181)
at com.ibm.ejs.csi.TransactionControlImpl.postInvoke(TransactionControlImpl.java:581)
at com.ibm.ejs.container.EJSContainer.postInvoke(EJSContainer.java:3910)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:107)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:132)
at com.ibm.ejs.jms.listener.ServerSession.run(ServerSession.java:481)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1469)

[27.04.10 08:05:30:055 GMT] 000000b3 RegisteredRes E WTRN0086I: XAException in der Vorbereitungsphase für Transaktion 000001283E4C84DD0000000100000003F8919396FABA5619243D0AFAA6E9F20769E68D80000001283E4C84DD0000000100000003F8919396FABA5619243D0AFAA6E9F20769E68D8000000001. Lokale Ressourcen folgen.
[27.04.10 08:05:30:055 GMT] 000000b3 RegisteredRes E WTRN0088I: XATransactionWrapper@ 7e887e88 XAResource: com.ibm.ejs.jms.JMSManagedSession$JMSXAResource@7e827e82 enlisted: true mcWrapper.hashCode()2078440418 hat eine XAException mit Fehlercode 2 festgestellt.
[27.04.10 08:05:30:055 GMT] 000000b3 RegisteredRes E WTRN0089I: XATransactionWrapper@ 5b685b68 XAResource: com.ibm.ejs.jms.JMSManagedSession$JMSXAResource@5b1e5b1e enlisted: true mcWrapper.hashCode()817508538: Votum: none.
[27.04.10 08:05:30:102 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_1.txt für das Ereignis geöffnet.
[27.04.10 08:05:30:102 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_1.txt für das Ereignis geschlossen.
[27.04.10 08:05:30:118 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_2.txt für das Ereignis geöffnet.
[27.04.10 08:05:30:134 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_2.txt für das Ereignis geschlossen.
[27.04.10 08:05:30:149 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_3.txt für das Ereignis geöffnet.
[27.04.10 08:05:30:149 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_3.txt für das Ereignis geschlossen.
[27.04.10 08:05:30:165 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_4.txt für das Ereignis geöffnet.
[27.04.10 08:05:30:212 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_4.txt für das Ereignis geschlossen.
[27.04.10 08:05:30:227 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_5.txt für das Ereignis geöffnet.
[27.04.10 08:05:30:227 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_5.txt für das Ereignis geschlossen.
[27.04.10 08:05:30:227 GMT] 000000b3 ServerSession W WMSG0031E: Bei der Verarbeitung einer JMS-Nachricht für MDB ZustandAbfragenMDB, JMS-Destination jms/fromTimbHistoryRequestQueue ist eine Ausnahme eingetreten: javax.ejb.TransactionRolledbackLocalException: ; nested exception is: com.ibm.websphere.csi.CSITransactionRolledbackException:
com.ibm.websphere.csi.CSITransactionRolledbackException:
at com.ibm.ejs.csi.TranStrategy.commit(TranStrategy.java:769)
at com.ibm.ejs.csi.TranStrategy.postInvoke(TranStrategy.java:181)
at com.ibm.ejs.csi.TransactionControlImpl.postInvoke(TransactionControlImpl.java:581)
at com.ibm.ejs.container.EJSContainer.postInvoke(EJSContainer.java:3910)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:107)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:132)
at com.ibm.ejs.jms.listener.ServerSession.run(ServerSession.java:481)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1469)
javax.ejb.TransactionRolledbackLocalException: ; nested exception is: com.ibm.websphere.csi.CSITransactionRolledbackException:
at com.ibm.ejs.csi.TranStrategy.commit(TranStrategy.java:769)
at com.ibm.ejs.csi.TranStrategy.postInvoke(TranStrategy.java:181)
at com.ibm.ejs.csi.TransactionControlImpl.postInvoke(TransactionControlImpl.java:581)
at com.ibm.ejs.container.EJSContainer.postInvoke(EJSContainer.java:3910)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:107)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:132)
at com.ibm.ejs.jms.listener.ServerSession.run(ServerSession.java:481)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1469)
Caused by: com.ibm.websphere.csi.CSITransactionRolledbackException:
... 8 more



Thank you a lot for your help. If you need more information about my configuration, please tell me...

Greetings Kai
 
Greenhorn
Posts: 20
IntelliJ IDE Spring Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
are you using DataSource to work with database?
 
Kai Wähner
Ranch Hand
Posts: 76
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Yes, we use Oracle JDBC OCI Driver (XA) with the URL --> Test connection works.
 
Askar Akhmerov
Greenhorn
Posts: 20
IntelliJ IDE Spring Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I'm not sure if it will help you, but you can try this.

1.browse through admin console to
Recources->JDBC->DataSources->WebSphere Application Server data source properties

2. remove check mark from box
Log missing transaction context

That worked for me when I had troubles with DataSources and some XA weirdness.
 
Kai Wähner
Ranch Hand
Posts: 76
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thank you for your hint, but it did not solve the problem :-(
 
Kai Wähner
Ranch Hand
Posts: 76
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
We solved the problem. If anyone else has the same problems:

We deleted the following folder within the WAS profile:
- temp
- wstemp
- file-stores
- translog

The problem is solved and does not occur anymore. Probably there was some corrupt data saved anywhere in these folders...
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
reply
    Bookmark Topic Watch Topic
  • New Topic