[
https://jira.jboss.org/browse/JBTM-800?page=com.atlassian.jira.plugin.sys...
]
Misty Stanley-Jones commented on JBTM-800:
------------------------------------------
Release Note:
Cause: The configuration guidelines to deploy just the Coordinator component of XTS were
incorrect. The ATParticipantRecoveryModule needs to be made available on the Participant
component.
Consequence: Following the guidelines caused a null pointer exception.
Fix: The Participant and Coordinator recovery modules now create and install a manager if
one is not already found.
Result: The configuration now works properly, and no exception is thrown.
Recovery manager not initialised when deploying just the Coordinator
--------------------------------------------------------------------
Key: JBTM-800
URL:
https://jira.jboss.org/browse/JBTM-800
Project: JBoss Transaction Manager
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: XTS
Affects Versions: 4.13.0
Reporter: Mauro Molinari
Assignee: Andrew Dinn
Fix For: 4.14.0
If you deploy just the Coordinator component of XTS and you follow the configuration
guidelines, you may be providing just the following recovery manager configuration entries
in xts-properties.xml:
<entry
key="org.jboss.jbossts.xts.recovery.coordinatorRecoveryModule1">org.jboss.jbossts.xts.recovery.coordinator.at.ATCoordinatorRecoveryModule</entry>
<entry
key="org.jboss.jbossts.xts.recovery.coordinatorRecoveryModule2">org.jboss.jbossts.xts.recovery.coordinator.at.SubordinateATCoordinatorRecoveryModule</entry>
However, in this way, after the Coordinator has started, you get the following
NullPointerException:
Exception in thread "Periodic Recovery" java.lang.NullPointerException
at
org.jboss.jbossts.xts.recovery.coordinator.at.ATCoordinatorRecoveryModule.processTransactionsStatus(ATCoordinatorRecoveryModule.java:280)
at
org.jboss.jbossts.xts.recovery.coordinator.at.ATCoordinatorRecoveryModule.periodicWorkSecondPass(ATCoordinatorRecoveryModule.java:121)
at
com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWorkInternal(PeriodicRecovery.java:789)
at
com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:371)
This is because the recovery manager is currently initialized by the
ATParticipantRecoveryModule, which is expected to be made available just on the
Participant component.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira