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

Implement doRecover method into JTS XATerminatorImple for WFTC inflow jca txn integration works

    XMLWordPrintable

    Details

    • Steps to Reproduce:
      Hide

      Crash recovery testsuite testcase could be used

      export JBOSS_HOME=...
      mvn clean verify -am -pl jbossts -DfailIfNoTests=false -fn -Djbossts.noJTA -Dtest=JcaInflowTransactionTestCase#jvmCrashAfterPrepareJTS -Deap -Dversion.eap=7.1.0.Beta1-redhat-4
      
      Show
      Crash recovery testsuite testcase could be used export JBOSS_HOME=... mvn clean verify -am -pl jbossts -DfailIfNoTests= false -fn -Djbossts.noJTA -Dtest=JcaInflowTransactionTestCase#jvmCrashAfterPrepareJTS -Deap -Dversion.eap=7.1.0.Beta1-redhat-4

      Description

      When RAR calls XATerminator.recover(int) the call chain is not directed to Narayana implementation of XATerminator but it's passed to WFTC where ExtendedJBossXATerminator method doRecover is called. But the doRecover does not provide the expected recovery call - e.g. it does not accept flags (XAResource.TMSTARTRSCAN, XAResource.TMENDRSCAN) to drive the whole recovery process in case.

      The biggest functionality trouble is for JTS where XATerminatorImple does not implement intentionally the doRecover function (https://github.com/jbosstm/narayana/blob/5.5.24.Final/ArjunaJTS/jtax/classes/com/arjuna/ats/internal/jta/transaction/jts/jca/XATerminatorImple.java#L511). Thus RAR using call XATerminator.recover when JTS is under use does nothing.

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  ochaloup Ondrej Chaloupka
                  Reporter:
                  ochaloup Ondrej Chaloupka
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  1 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: