Fuse Spring Boot using xa datasource shows NullPointerException on jta periodic recovery every 2 mins
Issue
- Fuse Spring Boot using xa datasource shows NullPointerException on jta periodic recovery every 2 mins.
- This NullPointerException disappear after executing any xa transaction on Fuse spring boot.
- NullPointerException occurred with the following stacktrace.
WARN ...ARJUNA016009: Caught:
java.lang.NullPointerException: null
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.xaRecoveryFirstPass(XARecoveryModule.java:642) ~[narayana-jta-5.9.8.Final.jar:5.9.8.Final (revision: 92f28)]
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.periodicWorkFirstPass(XARecoveryModule.java:226) ~[narayana-jta-5.9.8.Final.jar:5.9.8.Final (revision: 92f28)]
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.periodicWorkFirstPass(XARecoveryModule.java:171) ~[narayana-jta-5.9.8.Final.jar:5.9.8.Final (revision: 92f28)]
at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWorkInternal(PeriodicRecovery.java:770) ~[narayana-jta-5.9.8.Final.jar:5.9.8.Final (revision: 92f28)]
at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:382) ~[narayana-jta-5.9.8.Final.jar:5.9.8.Final (revision: 92f28)]
WARN ...ARJUNA016009: Caught:
java.lang.NullPointerException: null
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.xaRecoverySecondPass(XARecoveryModule.java:738) ~[narayana-jta-5.9.8.Final.jar:5.9.8.Final (revision: 92f28)]
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.bottomUpRecovery(XARecoveryModule.java:519) ~[narayana-jta-5.9.8.Final.jar:5.9.8.Final (revision: 92f28)]
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.periodicWorkSecondPass(XARecoveryModule.java:270) ~[narayana-jta-5.9.8.Final.jar:5.9.8.Final (revision: 92f28)]
at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWorkInternal(PeriodicRecovery.java:816) ~[narayana-jta-5.9.8.Final.jar:5.9.8.Final (revision: 92f28)]
at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:382) ~[narayana-jta-5.9.8.Final.jar:5.9.8.Final (revision: 92f28)]
- When the database for the xa datasource is jdv/teiid, sometimes the following stacktrace can be seen.
javax.transaction.xa.XAException: null
at org.teiid.jdbc.XAConnectionImpl.handleError(XAConnectionImpl.java:217) ~[teiid-jdbc-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.jdbc.XAConnectionImpl.recover(XAConnectionImpl.java:283) ~[teiid-jdbc-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at me.snowdrop.boot.narayana.core.jdbc.DataSourceXAResourceRecoveryHelper.recover(DataSourceXAResourceRecoveryHelper.java:109) ~[narayana-spring-boot-core-2.3.2-SNAPSHOT.jar:na]
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.xaRecoveryFirstPass(XARecoveryModule.java:634) ~[narayana-jta-5.9.8.Final.jar:5.9.8.Final (revision: 92f28)]
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.periodicWorkFirstPass(XARecoveryModule.java:226) ~[narayana-jta-5.9.8.Final.jar:5.9.8.Final (revision: 92f28)]
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.periodicWorkFirstPass(XARecoveryModule.java:171) ~[narayana-jta-5.9.8.Final.jar:5.9.8.Final (revision: 92f28)]
at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWorkInternal(PeriodicRecovery.java:770) ~[narayana-jta-5.9.8.Final.jar:5.9.8.Final (revision: 92f28)]
at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:382) ~[narayana-jta-5.9.8.Final.jar:5.9.8.Final (revision: 92f28)]
Environment
- Fuse
- 7.x
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.