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

Transaction Reaper reaps atomic JTS transactions that have already started 2PC

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 4.6.1
    • 4.6.0
    • JTS
    • None
    • Hide

      None

      Show
      None

      Start a JTS AtomicTransaction from a remote client with a timeout. During commit if a ResourceManager takes longer than the timeout period to respond then the TransactionReaper attempts a rollback even though 2PC has already started. The problem is in ArjunaTransactionImple::rollback_only (perhaps the determineStatus() check needs to compare against Status.StatusActive instead of StatusPrepared).

      The TM prints out the following warning:

      2009-03-26 13:09:31,181 [Thread-8] WARN com.arjuna.ats.arjuna.logging.arjLoggerI18N - [com.arjuna.ats.arjuna.coordinator.TransactionReaper_18] - TransactionReaper::check timeout for TX -53ef7d76:dd94:49cb7e7f:3 in state RUN
      2009-03-26 13:09:31,181 [Thread-9] WARN com.arjuna.ats.arjuna.logging.arjLoggerI18N - [com.arjuna.ats.arjuna.coordinator.TransactionReaper_8] - TransactionReaper::doCancellations worker Thread[Thread-9,10,main] failed to cancel TX -53ef7d76:dd94:49cb7e7f:3 – rescheduling for mark-as-rollback
      2009-03-26 13:09:31,182 [Thread-9] WARN com.arjuna.ats.jts.logging.loggerI18N - [com.arjuna.ats.internal.jts.cwcommit] Failed to mark transaction as rollback only:
      org.omg.CORBA.INVALID_TRANSACTION: vmcid: 0x4000 minor code: 3617 completed: No
      at com.arjuna.ats.internal.jts.orbspecific.coordinator.ArjunaTransactionImple.rollback_only(ArjunaTransactionImple.java:1159)
      at com.arjuna.ats.internal.jts.ControlWrapper.rollback_only(ControlWrapper.java:334)
      at com.arjuna.ats.internal.jts.ControlWrapper.preventCommit(ControlWrapper.java:172)
      at com.arjuna.ats.arjuna.coordinator.TransactionReaper.doCancellations(TransactionReaper.java:691)
      at com.arjuna.ats.internal.arjuna.coordinator.ReaperWorkerThread.run(ReaperWorkerThread.java:91)
      2009-03-26 13:09:31,184 [Thread-9] WARN com.arjuna.ats.arjuna.logging.arjLoggerI18N - [com.arjuna.ats.arjuna.coordinator.TransactionReaper_15] - TransactionReaper::doCancellations worker Thread[Thread-9,10,main] failed to mark TX -53ef7d76:dd94:49cb7e7f:3 as rollback only

            rhn-engineering-jhallida Jonathan Halliday
            rhn-engineering-mmusgrov Michael Musgrove
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: