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

Extraneous warning message observed in XARecoveryModule.xaRecoverySecondPass if the first pass has already failed

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: 4.17.20, 4.17.21, 5.0.2
    • Fix Version/s: 4.17.23, 5.0.4
    • Component/s: JTA
    • Labels:
      None
    • Environment:

      JBoss EAP 6.3

    • Steps to Reproduce:
      Hide

      Add AMQ RA and configure it so it contains ServerUrl property that uses failover protocol for example:

      <config-property name="ServerUrl">
                              failover:(tcp://host1:61616?trace=true,tcp://host2:61616?trace=true)?initialReconnectDelay=100&amp;jms.rmIdFromConnectionId=true&amp;maxReconnectAttempts=0
                          </config-property>
      

      Start JBoss EAP server and wait until the recovery runs second time. The errors will appear in the server log file.

      Show
      Add AMQ RA and configure it so it contains ServerUrl property that uses failover protocol for example: <config-property name="ServerUrl"> failover:(tcp://host1:61616?trace=true,tcp://host2:61616?trace=true)?initialReconnectDelay=100&amp;jms.rmIdFromConnectionId=true&amp;maxReconnectAttempts=0 </config-property> Start JBoss EAP server and wait until the recovery runs second time. The errors will appear in the server log file.
    • Workaround Description:
      Hide

      None

      Show
      None
    • Bugzilla Update:
      Perform

      Description

      When using AMQ failover protocol, the Narayana recovery process generates the following exception:

      10:19:36,053 INFO  [org.apache.activemq.transport.failover.FailoverTransport] (ActiveMQ Task-1) Successfully connected to tcp://ragga:61616?trace=true
      10:21:46,139 INFO  [org.apache.activemq.transport.failover.FailoverTransport] (ActiveMQ Task-1) Successfully connected to tcp://ragga:61616?trace=true
      10:21:46,139 WARN  [com.arjuna.ats.jta] (Periodic Recovery) ARJUNA016027: Local XARecoveryModule.xaRecovery got XA exception XAException.XAER_RMERR: javax.transaction.xa.XAException: Failover transport not connected: unconnected
      	at org.apache.activemq.TransactionContext.recover(TransactionContext.java:656)
      	at org.apache.activemq.ra.LocalAndXATransaction.recover(LocalAndXATransaction.java:135)
      	at org.jboss.jca.core.tx.jbossts.XAResourceWrapperImpl.recover(XAResourceWrapperImpl.java:177)
      	at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.xaRecoveryFirstPass(XARecoveryModule.java:548) [jbossjts-jacorb-4.17.21.Final-redhat-1.jar:4.17.21.Final-redhat-1]
      	at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.periodicWorkFirstPass(XARecoveryModule.java:187) [jbossjts-jacorb-4.17.21.Final-redhat-1.jar:4.17.21.Final-redhat-1]
      	at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWorkInternal(PeriodicRecovery.java:743) [jbossjts-jacorb-4.17.21.Final-redhat-1.jar:4.17.21.Final-redhat-1]
      	at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:371) [jbossjts-jacorb-4.17.21.Final-redhat-1.jar:4.17.21.Final-redhat-1]
      
      10:21:56,165 WARN  [com.arjuna.ats.jta] (Periodic Recovery) ARJUNA016008: Local XARecoveryModule.xaRecovery - caught exception: java.lang.NullPointerException
      	at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.xaRecoverySecondPass(XARecoveryModule.java:619) [jbossjts-jacorb-4.17.21.Final-redhat-1.jar:4.17.21.Final-redhat-1]
      	at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.bottomUpRecovery(XARecoveryModule.java:431) [jbossjts-jacorb-4.17.21.Final-redhat-1.jar:4.17.21.Final-redhat-1]
      	at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.periodicWorkSecondPass(XARecoveryModule.java:212) [jbossjts-jacorb-4.17.21.Final-redhat-1.jar:4.17.21.Final-redhat-1]
      	at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWorkInternal(PeriodicRecovery.java:789) [jbossjts-jacorb-4.17.21.Final-redhat-1.jar:4.17.21.Final-redhat-1]
      	at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:371) [jbossjts-jacorb-4.17.21.Final-redhat-1.jar:4.17.21.Final-redhat-1]
      

      Although the first message may be expected if the resource manager throws an exception in XAResource::recover(), the second message does not add any further assistance in resolving the issue and should be removed as noise.

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                tomjenkinson Thomas Jenkinson
                Reporter:
                raggz Tom Ross
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: