Excepción en transacciones de Oracle

Cuando se reinstala virtual member manager, el registro de transacciones de Oracle XA no se limpia correctamente.

Si recibe la siguiente excepción cuando utilice el depósito de base de datos, puede que el directorio tranlog no se haya suprimido durante la reinstalación.
WTRN0037W: The transaction service encountered an error on an xa_recover operation.
 The resource was com.ibm.ws.rsadapter.spi.WSRdbXaResourceImpl@48857464. The error 
code was XAER_RMERR. The exception stack trace follows: javax.transaction.xa.XAException
   at oracle.jdbc.xa.OracleXAResource.recover(OracleXAResource.java:626)
   at com.ibm.ws.rsadapter.spi.WSRdbXaResourceImpl.recover(WSRdbXaResourceImpl.java:955)
   at com.ibm.ws.Transaction.JTA.XARminst.recover(XARminst.java:137)
   at com.ibm.ws.Transaction.JTA.XARecoveryData.recover(XARecoveryData.java:626)
   at com.ibm.ws.Transaction.JTA.PartnerLogTable.recover(PartnerLogTable.java:512)
   at com.ibm.ws.Transaction.JTA.RecoveryManager.resync(RecoveryManager.java:1794)
   at com.ibm.ws.Transaction.JTA.RecoveryManager.run(RecoveryManager.java:2263)

Solución

  1. Busque los directorios tranlog en toda la máquina. Realice una búsqueda completa en la máquina, no tan sólo en el directorio WAS actual.
  2. Suprima el contenido de los directorios tranlog.
    Nota: Si es posible, primero suprima el contenido del directorio tranlog de la versión actual de WebSphere Application Server y pruebe si con esto se corrige el problema.


Condiciones de uso | Comentarios