-
Bug
-
Resolution: Done
-
Major
-
5.0.0.BETA1
-
None
-
None
I'm not sure how it happened or how to reproduce it, but I think it might make sense to inspect the code and consider that "TransactionTable.getLocalTransaction" might return null.
I think it timed out because I was having a breackpoit during debug, I found this stacktrace later in the logs:
12:43:09,548 INFO SessionFactoryImpl:927 - closing 12:43:30,047 WARN arjuna:471 - ARJUNA-12117 TransactionReaper::check timeout for TX 0:ffff7f000001:e41d:4d9da322:6 in state RUN 12:43:30,047 WARN arjuna:387 - ARJUNA-12095 Abort of action id 0:ffff7f000001:e41d:4d9da322:6 invoked while multiple threads active within it. 12:43:30,048 WARN arjuna:435 - ARJUNA-12108 CheckedAction::check - atomic action 0:ffff7f000001:e41d:4d9da322:6 aborting with 1 threads active! 12:43:30,049 ERROR TransactionCoordinator:125 - Exception while rollback java.lang.NullPointerException at java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:768) at org.infinispan.transaction.TransactionTable.getLocalTransaction(TransactionTable.java:329) at org.infinispan.interceptors.InvocationContextInterceptor.stoppingAndNotAllowed(InvocationContextInterceptor.java:130) at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:80) at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:62) at org.infinispan.commands.AbstractVisitor.visitRollbackCommand(AbstractVisitor.java:111) at org.infinispan.commands.tx.RollbackCommand.acceptVisitor(RollbackCommand.java:47) at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118) at org.infinispan.interceptors.BatchingInterceptor.handleDefault(BatchingInterceptor.java:76) at org.infinispan.commands.AbstractVisitor.visitRollbackCommand(AbstractVisitor.java:111) at org.infinispan.commands.tx.RollbackCommand.acceptVisitor(RollbackCommand.java:47) at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:273) at org.infinispan.transaction.TransactionCoordinator.rollback(TransactionCoordinator.java:123) at org.infinispan.transaction.xa.TransactionXaAdapter.rollback(TransactionXaAdapter.java:90) at com.arjuna.ats.internal.jta.resources.arjunacore.XAResourceRecord.topLevelAbort(XAResourceRecord.java:336) at com.arjuna.ats.arjuna.coordinator.BasicAction.doAbort(BasicAction.java:2902) at com.arjuna.ats.arjuna.coordinator.BasicAction.doAbort(BasicAction.java:2881) at com.arjuna.ats.arjuna.coordinator.BasicAction.Abort(BasicAction.java:1602) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.cancel(TwoPhaseCoordinator.java:119) at com.arjuna.ats.arjuna.AtomicAction.cancel(AtomicAction.java:212) at com.arjuna.ats.arjuna.coordinator.TransactionReaper.doCancellations(TransactionReaper.java:367) at com.arjuna.ats.internal.arjuna.coordinator.ReaperWorkerThread.run(ReaperWorkerThread.java:79) 12:43:30,053 WARN jta:193 - ARJUNA-16045 attempted rollback of < formatId=131076, gtrid_length=29, bqual_length=28, tx_uid=0:ffff7f000001:e41d:4d9da322:6, node_name=1, branch_uid=0:ffff7f000001:e41d:4d9da322:8, eis_name=unknown eis name > (TransactionXaAdapter{localTransaction=LocalXaTransaction{xid=< formatId=131076, gtrid_length=29, bqual_length=28, tx_uid=0:ffff7f000001:e41d:4d9da322:6, node_name=1, branch_uid=0:ffff7f000001:e41d:4d9da322:8, eis_name=unknown eis name >} LocalTransaction{remoteLockedNodes=null, isMarkedForRollback=false, transaction=TransactionImple < ac, BasicAction: 0:ffff7f000001:e41d:4d9da322:6 status: ActionStatus.ABORTING >} org.infinispan.transaction.xa.LocalXaTransaction@329d4738}) failed with exception code XAException.XA_HEURHAZ javax.transaction.xa.XAException at org.infinispan.transaction.TransactionCoordinator.rollback(TransactionCoordinator.java:126) at org.infinispan.transaction.xa.TransactionXaAdapter.rollback(TransactionXaAdapter.java:90) at com.arjuna.ats.internal.jta.resources.arjunacore.XAResourceRecord.topLevelAbort(XAResourceRecord.java:336) at com.arjuna.ats.arjuna.coordinator.BasicAction.doAbort(BasicAction.java:2902) at com.arjuna.ats.arjuna.coordinator.BasicAction.doAbort(BasicAction.java:2881) at com.arjuna.ats.arjuna.coordinator.BasicAction.Abort(BasicAction.java:1602) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.cancel(TwoPhaseCoordinator.java:119) at com.arjuna.ats.arjuna.AtomicAction.cancel(AtomicAction.java:212) at com.arjuna.ats.arjuna.coordinator.TransactionReaper.doCancellations(TransactionReaper.java:367) at com.arjuna.ats.internal.arjuna.coordinator.ReaperWorkerThread.run(ReaperWorkerThread.java:79)
- is related to
-
ISPN-1256 NPE at transaction rollback (again)
- Closed