000031343 - IMG - XAException in WebLogic or WebSphere system log

Document created by RSA Customer Support Employee on Jun 14, 2016Last modified by RSA Customer Support Employee on Apr 21, 2017
Version 2Show Document
  • View in full screen mode

Article Content

Article Number000031343
Applies ToRSA Product Set: Identity Management and Governance
RSA Product/Service Type: Enterprise Software
RSA Version/Condition: 6.8.1.,6.9, 6.9.1
Platform: WebSphere, WebLogic
Product Description: Access Request Manager
IssueWebSphere generates a large number of errors associated with the XA transaction rollback tables in the WebSphere system.out log.
[9/2/15 14:31:28:262 GMT] 00000073 XARecoveryDat A   WTRN0146I: Obtained 0 xid(s) from xa recover on XAResource: WPDS of which 0 will be processed by this server
[9/2/15 14:31:28:263 GMT] 00000073 XARecoveryDat A   WTRN0151I: Preparing to call xa recover on XAResource: WPDS
[9/2/15 14:31:28:370 GMT] 00000073 WSRdbXaResour E   DSRA0304E:  XAException occurred. XAException contents and details are: The cause is               : null.
[9/2/15 14:31:28:371 GMT] 00000073 WSRdbXaResour E   DSRA0302E:  XAException occurred.  Error code is: XAER_RMERR (-3).  Exception is: <null>
[9/2/15 14:31:28:371 GMT] 00000073 XARminst      E   WTRN0037W: The transaction service encountered an error on an xa_recover operation. The resource was com.ibm.ws.rsadapter.spi.WSRdbXaResourceImpl@dfcc68de. The error code was XAER_RMERR. The exception stack trace follows: javax.transaction.xa.XAException
                at oracle.jdbc.xa.OracleXAResource.recover(OracleXAResource.java:709)
                at com.ibm.ws.rsadapter.spi.WSRdbXaResourceImpl.recover(WSRdbXaResourceImpl.java:1116)
                at com.ibm.ws.Transaction.JTA.XARminst.recover(XARminst.java:141)
                at com.ibm.ws.Transaction.JTA.XARecoveryData.recover(XARecoveryData.java:716)
                at com.ibm.tx.jta.impl.PartnerLogTable.recover(PartnerLogTable.java:431)
                at com.ibm.tx.jta.impl.RecoveryManager.resync(RecoveryManager.java:1534)
                at com.ibm.tx.jta.impl.RecoveryManager.performResync(RecoveryManager.java:2267)
                at com.ibm.ws.tx.jta.RecoveryManager.performResync(RecoveryManager.java:117)
                at com.ibm.tx.jta.impl.RecoveryManager.run(RecoveryManager.java:2220)
                at java.lang.Thread.run(Thread.java:777)
CauseThis issue may occur on WebSphere or WebLogic installations if the Aveksa user AVUSER is not configured with permission to access the Oracle XA transaction rollback tables.  This can also cause the transaction tables to fill up.
XA transaction database grants are already present if you are using a JBOSS appliance, but these grants need to be manually added for WebSphere and WebLogic servers.  The 6.8.1 and 6.9.1 installation guides for WebSphere and WebLogic do not include this information.   This is corrected in the RSA Via L&G 7.0 installation guide. 
ResolutionApply the following Oracle grants for AVUSER to the following XA transaction tables:
grant select on pending_trans$ to avuser; 
grant select on dba_2pc_pending to avuser;
grant select on dba_pending_transactions to avuser;
grant execute on dbms_system to avuser;  
grant execute on dbms_xa to avuser;

On WebSphere the transaction logs can also take up considerable disk space.  If the grants were not applied correctly you should also clean up the old transaction logs.
The transaction logs for WebSphere may be located in different locations depending on the location where WebSphere is installed.  For example:

To remove the transaction logs, do the following:

  1. Stop the server.
  2. Delete the '\transaction' folder and all subdirectories.
  3. Restart the server. 
For WebLogic the transaction logs are in binary format and cannot be deleted. 

See the following IBM article for more information for XA transaction configuration for WebSphere.

See the following Oracle Article for more information for XA transaction configuration for WebLogic.