[infinispan-issues] [JBoss JIRA] Commented: (ISPN-1036) NPE at transaction rollback

Mircea Markus (JIRA) jira-events at lists.jboss.org
Wed May 11 14:15:22 EDT 2011


    [ https://issues.jboss.org/browse/ISPN-1036?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12601454#comment-12601454 ] 

Mircea Markus commented on ISPN-1036:
-------------------------------------

I think this was fixed indirectly by ISPN-994 - Create tooling (JMX) to handle heuristic transactions. By the look code that condition should not happen, so I won't add a guard. If you see it again, can you please paste more context logs.

> NPE at transaction rollback
> ---------------------------
>
>                 Key: ISPN-1036
>                 URL: https://issues.jboss.org/browse/ISPN-1036
>             Project: Infinispan
>          Issue Type: Bug
>    Affects Versions: 5.0.0.BETA1
>            Reporter: Sanne Grinovero
>            Assignee: Mircea Markus
>             Fix For: 5.0.0.CR2
>
>
> 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:
> {noformat} 
> 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 at 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)
> {noformat} 

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the infinispan-issues mailing list