Uploaded image for project: 'JBoss Transaction Manager'
  1. JBoss Transaction Manager
  2. JBTM-1867

Confusing error logged after crash recovery on prepare when hornetq object store used

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: 4.17.7, 5.0.0.M3
    • Fix Version/s: 4.17.9, 5.0.0.M5
    • Component/s: JTS
    • Labels:
      None

      Description

      There is logged an confusing error after crash recovery happens when server crashed in prepare phase.

      14:47:59,697 ERROR [stderr] (RequestProcessor-10) com.arjuna.ats.arjuna.exceptions.ObjectStoreException: java.lang.IllegalStateException: Cannot find add info 3
      14:47:59,698 ERROR [stderr] (RequestProcessor-10) 	at com.arjuna.ats.internal.arjuna.objectstore.hornetq.HornetqJournalStore.remove_committed(HornetqJournalStore.java:153)
      14:47:59,698 ERROR [stderr] (RequestProcessor-10) 	at com.arjuna.ats.internal.arjuna.objectstore.hornetq.HornetqObjectStoreAdaptor.remove_committed(HornetqObjectStoreAdaptor.java:186)
      14:47:59,698 ERROR [stderr] (RequestProcessor-10) 	at com.arjuna.ats.internal.jta.resources.jts.orbspecific.XAResourceRecord.destroyState(XAResourceRecord.java:1271)
      14:47:59,699 INFO  [org.jboss.as.test.jbossts.common.TestXAResourceCommon] (Periodic Recovery) TestXAResourceCommon.isSameRM(xaResource=TestXAResourceRecovered(TestXAResourceCommon(0, null)))
      14:47:59,699 ERROR [stderr] (RequestProcessor-10) 	at com.arjuna.ats.internal.jta.resources.jts.orbspecific.XAResourceRecord.rollback(XAResourceRecord.java:411)
      14:47:59,699 ERROR [stderr] (RequestProcessor-10) 	at com.arjuna.ArjunaOTS.OTSAbstractRecordPOA._invoke(OTSAbstractRecordPOA.java:213)
      14:47:59,699 ERROR [stderr] (RequestProcessor-10) 	at org.jacorb.poa.RequestProcessor.invokeOperation(RequestProcessor.java:306)
      14:47:59,699 ERROR [stderr] (RequestProcessor-10) 	at org.jacorb.poa.RequestProcessor.process(RequestProcessor.java:626)
      14:47:59,699 ERROR [stderr] (RequestProcessor-10) 	at org.jacorb.poa.RequestProcessor.run(RequestProcessor.java:769)
      14:47:59,700 ERROR [stderr] (RequestProcessor-10) Caused by: java.lang.IllegalStateException: Cannot find add info 3
      14:47:59,700 ERROR [stderr] (RequestProcessor-10) 	at org.hornetq.core.journal.impl.JournalImpl.appendDeleteRecord(JournalImpl.java:904)
      14:47:59,700 ERROR [stderr] (RequestProcessor-10) 	at org.hornetq.core.journal.impl.JournalBase.appendDeleteRecord(JournalBase.java:163)
      14:47:59,700 ERROR [stderr] (RequestProcessor-10) 	at org.hornetq.core.journal.impl.JournalImpl.appendDeleteRecord(JournalImpl.java:82)
      14:47:59,701 ERROR [stderr] (RequestProcessor-10) 	at com.arjuna.ats.internal.arjuna.objectstore.hornetq.HornetqJournalStore.remove_committed(HornetqJournalStore.java:151)
      14:47:59,701 ERROR [stderr] (RequestProcessor-10) 	... 7 more
      

      This happens when hornetq object store is used. This is caused because of the rollback is called on resource two times. This is ok - this matches to OTS spec (https://bugzilla.redhat.com/show_bug.cgi?id=988724).
      But after the second call of rollback the TM tries to remove Xid from object store. But as the xid does not exist anymore the hornetq object store implementation throws exception that is logged directly on stderr:
      XAResourceRecord.destroyState does e.printStackTrace()

      I would propose to put this exception to debug or trace as it does not mean error in fact.

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                mmusgrov Michael Musgrove
                Reporter:
                ochaloup Ondrej Chaloupka
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: