Interpreting the WebSphere Application Server XAError for Oracle® datasources
 Technote (troubleshooting)
 
Problem(Abstract)
This technote describes how to interpret the following SystemOut.log error message and what action to take to resolve it.

[12/11/03 10:45:48:071 CST] 558dfe TraceNLS u No message text associated with key
The.XA.Error.is............:.-3
The.XA.Error.message.is...A.resource.manager.error.has.occured.in.the.transaction.branch.
The.Oracle.Error.code.is...:.2051
The.Oracle.Error.message.is:.Internal.XA.Error in bundle IBMDataStoreAdapterNLS
[12/11/03 10:45:48:034 CST] 558dfe WSRdbXaResour I
 
Cause
A java.transaction.xa.XAException that is caught by the IBM® WebSphere® Application Server when processing an Oracle database operation will result in an XA.Error being logged.
 
Resolving the problem
The two lines that have the string XA.Error are providing the same information. One is the numeric version of the XA error code, the other is the text equivalent. So for the two lines below, XAER_RMERR has a numeric value of -3.

The.XA.Error.is............:.-3
The.XA.Error.message.is....:.A.resource.manager.error.has.occured.in.the.transaction.branch.

You can look up the XA Error for Oracle. Here is a link that documents the XAException error codes and gives a short description of each of these error codes, javax.transaction.xa Class XAException

Looking up the Oracle ORA-nnnnn message

The lines that contain Oracle.Error.code show the numeric message number and indicate to what message the number maps. You can search for this message number on the internet. To search an Oracle error, look for ORA-nnnnn, where nnnnn is a five-digit number.

For this example, the message you look up is ORA-02051.

The.Oracle.Error.code.is...:.2051
The.Oracle.Error.message.is:.Internal.XA.Error  in bundle IBMDataStoreAdapterNLS

Looking for exceptions in the ffdc logs

Examine the serverName_exception.log in the install_root/WebSphere/AppServer/logs/ffdc directory. Search for the time stamp of the error which uses the format yy.mm.dd hh:mm:ss.

For this example, search for 03.12.11 10:45:48. You are looking for all exceptions logged in the ffdc log at [12/11/03 10:45:48:071 CST].

In this example, the following exceptions were logged at this time:
+16     1     03.12.11 10:45:48:113 CST oracle.jdbc.xa.OracleXAException com.ibm.ejs.j2c.XATransactionWrapper.end 417
+17     1     03.12.11 10:45:48:280 CST oracle.jdbc.xa.OracleXAException com.ibm.ejs.jts.jta.WSResourceImplBase.end 336
+18     1     03.12.11 10:45:48:342 CST com.ibm.ejs.jts.jta.TransactionDisassociationException com.ibm.ejs.jts.jta.WSResourceImplBase.completionPreinvoke 435
+19     1     03.12.11 10:45:48:471 CST org.omg.CORBA.TRANSACTION_ROLLEDBACK com.ibm.ejs.jts.jts.ResourceVector.deliverOutcomeWork 689
+20     1     03.12.11 10:45:48:844 CST com.ibm.ejs.jts.jta.IllegalResourceStateException com.ibm.ejs.jts.jta.WSResourceImplBase.completionPreinvoke 435
+21     1     03.12.11 10:45:48:925 CST java.sql.SQLException com.ibm.ws.rsadapter.spi.WSRdbManagedConnectionImpl.destroy 1024

Now look for the complete exception in one of the ffdc files with names like:
serverName_49bed2_03.12.11_09.10.18_1.txt. This search finds the full exception with the Java™ stack trace.

Determining what action the transaction is performing when the error occurs

Other important information to gather is the exception that is thrown when this error occurs. With this you can determine what the transaction was doing when the exception occurred, and you can determine how to interpret the error.

The ffdc errors above indicate that the call to com.ibm.ejs.j2c.XATransactionWrapper.end is causing the exception to be thrown.

Another source of information is the exception that is thrown when the problem occurs. There are three places you might find this:

  1. The systemOut.log or systemErr.log, if it displays the full exception
  2. The ffdc files that list the full exception information
  3. A JTS trace. Refer to this technote for information on how to enable the trace, MustGather: Java Transaction Service (JTS) problems in version 5.0, 5.1 and 6.0
 
 
Cross Reference information
Segment Product Component Platform Version Edition
Application Servers Runtimes for Java Technology Java SDK
 
 


Document Information


Product categories: Software > Application Servers > Distributed Application & Web Servers > WebSphere Application Server > Java Transaction Service (JTS)
Operating system(s): Windows
Software version: 6.1
Software edition:
Reference #: 1162389
IBM Group: Software Group
Modified date: Dec 27, 2007