[ https://issues.apache.org/jira/browse/GEODE-2429?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Eric Shu resolved GEODE-2429. ----------------------------- Resolution: Fixed > NPE in JtaAfterCompletionMessage.operateOnTx() > ----------------------------------------------- > > Key: GEODE-2429 > URL: https://issues.apache.org/jira/browse/GEODE-2429 > Project: Geode > Issue Type: Bug > Components: transactions > Reporter: Eric Shu > Assignee: Eric Shu > Fix For: 1.2.0 > > > There is a race could cause a NullPointerException: > Exception in notify after completion due to java.lang.NullPointerException > org.apache.geode.cache.TransactionException: java.lang.NullPointerException, > caused by java.lang.NullPointerException > at > org.apache.geode.internal.cache.PeerTXStateStub.afterCompletion(PeerTXStateStub.java:206) > at > org.apache.geode.internal.cache.TXStateProxyImpl.afterCompletion(TXStateProxyImpl.java:615) > at > org.apache.geode.internal.cache.tier.sockets.command.TXSynchronizationCommand$2.run(TXSynchronizationCommand.java:160) > at > org.apache.geode.internal.cache.tier.sockets.command.TXSynchronizationCommand.cmdExecute(TXSynchronizationCommand.java:211) > at > org.apache.geode.internal.cache.tier.sockets.BaseCommand.execute(BaseCommand.java:141) > at > org.apache.geode.internal.cache.tier.sockets.ServerConnection.doNormalMsg(ServerConnection.java:783) > at > org.apache.geode.internal.cache.tier.sockets.ServerConnection.doOneMessage(ServerConnection.java:914) > at > org.apache.geode.internal.cache.tier.sockets.ServerConnection.run(ServerConnection.java:1171) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > at > org.apache.geode.internal.cache.tier.sockets.AcceptorImpl$1$1.run(AcceptorImpl.java:519) > at java.lang.Thread.run(Thread.java:745) > Caused by: java.lang.NullPointerException > at Remote Member > 'rs-TheLynns-client-1(bridgegemfire1_rs-TheLynns-client-1_13760:13760)<ec><v1>:1025' > in > org.apache.geode.internal.cache.JtaAfterCompletionMessage.operateOnTx(JtaAfterCompletionMessage.java:94) > at Remote Member > 'rs-TheLynns-client-1(bridgegemfire1_rs-TheLynns-client-1_13760:13760)<ec><v1>:1025' > in org.apache.geode.internal.cache.TXMessage.process(TXMessage.java:88) > at Remote Member > 'rs-TheLynns-client-1(bridgegemfire1_rs-TheLynns-client-1_13760:13760)<ec><v1>:1025' > in > org.apache.geode.distributed.internal.DistributionMessage.scheduleAction(DistributionMessage.java:376) > at Remote Member > 'rs-TheLynns-client-1(bridgegemfire1_rs-TheLynns-client-1_13760:13760)<ec><v1>:1025' > in > org.apache.geode.distributed.internal.DistributionMessage$1.run(DistributionMessage.java:442) > at Remote Member > 'rs-TheLynns-client-1(bridgegemfire1_rs-TheLynns-client-1_13760:13760)<ec><v1>:1025' > in > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > at Remote Member > 'rs-TheLynns-client-1(bridgegemfire1_rs-TheLynns-client-1_13760:13760)<ec><v1>:1025' > in > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > at Remote Member > 'rs-TheLynns-client-1(bridgegemfire1_rs-TheLynns-client-1_13760:13760)<ec><v1>:1025' > in > org.apache.geode.distributed.internal.DistributionManager.runUntilShutdown(DistributionManager.java:621) > at Remote Member > 'rs-TheLynns-client-1(bridgegemfire1_rs-TheLynns-client-1_13760:13760)<ec><v1>:1025' > in > org.apache.geode.distributed.internal.DistributionManager$5$1.run(DistributionManager.java:917) > at Remote Member > 'rs-TheLynns-client-1(bridgegemfire1_rs-TheLynns-client-1_13760:13760)<ec><v1>:1025' > in java.lang.Thread.run(Thread.java:745) > at > org.apache.geode.distributed.internal.ReplyException.handleAsUnexpected(ReplyException.java:85) > at > org.apache.geode.internal.cache.RemoteOperationMessage$RemoteOperationResponse.waitForCacheException(RemoteOperationMessage.java:652) > at > org.apache.geode.internal.cache.TXRemoteCommitMessage$RemoteCommitResponse.waitForResponse(TXRemoteCommitMessage.java:273) > at > org.apache.geode.internal.cache.PeerTXStateStub.afterCompletion(PeerTXStateStub.java:200) > ... 11 more -- This message was sent by Atlassian JIRA (v6.3.15#6346)