ARJUNA016027 "Periodic Recovery" スレッドのロールバックが JBoss EAP の PSQLException "prepared transaction with identifier ... is busy" で失敗する
Issue
... WARN  [com.arjuna.ats.jta] (Periodic Recovery) ARJUNA016027: Local XARecoveryModule.xaRecovery got XA exception XAException.XAER_RMERR: org.postgresql.xa.PGXAException: Error rolling back prepared transaction. rollback xid=<...>, preparedXid=null, currentXid={2}
        at org.postgresql@42.2.18//org.postgresql.xa.PGXAConnection.rollback(PGXAConnection.java:485)
        at org.jboss.ironjacamar.jdbcadapters@1.4.22.Final-redhat-00001//org.jboss.jca.adapters.jdbc.xa.XAManagedConnection.rollback(XAManagedConnection.java:357)
        at org.jboss.ironjacamar.impl@1.4.22.Final-redhat-00001//org.jboss.jca.core.tx.jbossts.XAResourceWrapperImpl.rollback(XAResourceWrapperImpl.java:196)
        at org.jboss.ironjacamar.impl@1.4.22.Final-redhat-00001//org.jboss.jca.core.tx.jbossts.XAResourceWrapperStatImpl.rollback(XAResourceWrapperStatImpl.java:160)
        at org.jboss.jts//com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.handleOrphan(XARecoveryModule.java:956)
        at org.jboss.jts//com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.xaRecoverySecondPass(XARecoveryModule.java:861)
        at org.jboss.jts//com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.bottomUpRecovery(XARecoveryModule.java:585)
        at org.jboss.jts//com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.periodicWorkSecondPass(XARecoveryModule.java:277)
        at org.jboss.jts//com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWorkInternal(PeriodicRecovery.java:816)
        at org.jboss.jts//com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:382)
Caused by: org.postgresql.util.PSQLException: ERROR: prepared transaction with identifier "..." is busy
        at org.postgresql@42.2.18//org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2553)
        at org.postgresql@42.2.18//org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2285)
        at org.postgresql@42.2.18//org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:323)
        at org.postgresql@42.2.18//org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:473)
        at org.postgresql@42.2.18//org.postgresql.jdbc.PgStatement.execute(PgStatement.java:393)
        at org.postgresql@42.2.18//org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:322)
        at org.postgresql@42.2.18//org.postgresql.jdbc.PgStatement.executeCachedSql(PgStatement.java:308)
        at org.postgresql@42.2.18//org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:284)
        at org.postgresql@42.2.18//org.postgresql.jdbc.PgStatement.executeUpdate(PgStatement.java:258)
        at org.postgresql@42.2.18//org.postgresql.xa.PGXAConnection.rollback(PGXAConnection.java:462)
        ... 9 more
  Environment
- Red Hat JBoss Enterprise Application Platform (EAP) 7
 - PostgreSQL
 
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.