[ https://issues.apache.org/jira/browse/GEODE-6955?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Eric Shu updated GEODE-6955: ---------------------------- Labels: GeodeCommons (was: ) > Client transaction commits failed with NPE in detectReadConflicts > ----------------------------------------------------------------- > > Key: GEODE-6955 > URL: https://issues.apache.org/jira/browse/GEODE-6955 > Project: Geode > Issue Type: Bug > Components: transactions > Affects Versions: 1.1.0 > Reporter: Eric Shu > Assignee: Eric Shu > Priority: Major > Labels: GeodeCommons > > This is shown when I add a dunit test for changes in detectReadConflicts > implementation. > It occurs when client registers interest and a key is read locked. The issue > is that a read locked key op in transaction is null. > [vm0] [info 2019/07/10 14:21:05.412 PDT <ServerConnection on port 54479 > Thread 1> tid=0x51] event is > TXEntryState$TxEntryEventImpl[op=null;region=/TempdunitTest_readTransactionCanBlockWriteTransaction_region;key=1;callbackArg=null;originRemote=true;originMember=10.118.20.78(7291)<v1>:41001] > [vm0] [info 2019/07/10 14:21:05.412 PDT <ServerConnection on port 54479 > Thread 1> tid=0x51] event.getOperation is null > [vm2] [info 2019/07/10 14:21:05.428 PDT <RMI TCP Connection(1)-127.0.0.1> > tid=0x13] Got result: EXCEPTION_OCCURRED > [vm2] org.apache.geode.cache.client.ServerOperationException: remote server > on 10.118.20.78(7293:loner):54498:f4dcc2dd: While performing a remote commit > [vm2] at > org.apache.geode.cache.client.internal.AbstractOp.processObjResponse(AbstractOp.java:286) > [vm2] at > org.apache.geode.cache.client.internal.CommitOp$CommitOpImpl.processResponse(CommitOp.java:68) > [vm2] at > org.apache.geode.cache.client.internal.AbstractOp.processResponse(AbstractOp.java:222) > [vm2] at > org.apache.geode.cache.client.internal.AbstractOp.attemptReadResponse(AbstractOp.java:207) > [vm2] at > org.apache.geode.cache.client.internal.AbstractOp.attempt(AbstractOp.java:382) > [vm2] at > org.apache.geode.cache.client.internal.ConnectionImpl.execute(ConnectionImpl.java:263) > [vm2] at > org.apache.geode.cache.client.internal.pooling.PooledConnection.execute(PooledConnection.java:353) > [vm2] at > org.apache.geode.cache.client.internal.OpExecutorImpl.executeWithPossibleReAuthentication(OpExecutorImpl.java:750) > [vm2] at > org.apache.geode.cache.client.internal.OpExecutorImpl.executeOnServer(OpExecutorImpl.java:329) > [vm2] at > org.apache.geode.cache.client.internal.OpExecutorImpl.executeWithServerAffinity(OpExecutorImpl.java:183) > [vm2] at > org.apache.geode.cache.client.internal.OpExecutorImpl.execute(OpExecutorImpl.java:122) > [vm2] at > org.apache.geode.cache.client.internal.OpExecutorImpl.execute(OpExecutorImpl.java:108) > [vm2] at > org.apache.geode.cache.client.internal.PoolImpl.execute(PoolImpl.java:770) > [vm2] at > org.apache.geode.cache.client.internal.CommitOp.execute(CommitOp.java:34) > [vm2] at > org.apache.geode.cache.client.internal.ServerRegionProxy.commit(ServerRegionProxy.java:246) > [vm2] at > org.apache.geode.internal.cache.tx.ClientTXStateStub.commit(ClientTXStateStub.java:115) > [vm2] at > org.apache.geode.internal.cache.TXStateProxyImpl.commit(TXStateProxyImpl.java:211) > [vm2] at > org.apache.geode.internal.cache.TXManagerImpl.commit(TXManagerImpl.java:426) > [vm2] at > org.apache.geode.internal.cache.TempdunitTest.commitReadTransaction(TempdunitTest.java:221) > [vm2] at > org.apache.geode.internal.cache.TempdunitTest.lambda$readTransactionCanBlockWriteTransaction$632092bf$1(TempdunitTest.java:105) > [vm2] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > [vm2] at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > [vm2] at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [vm2] at java.lang.reflect.Method.invoke(Method.java:498) > [vm2] at > org.apache.geode.test.dunit.internal.MethodInvoker.executeObject(MethodInvoker.java:123) > [vm2] at > org.apache.geode.test.dunit.internal.RemoteDUnitVM.executeMethodOnObject(RemoteDUnitVM.java:69) > [vm2] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > [vm2] at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > [vm2] at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [vm2] at java.lang.reflect.Method.invoke(Method.java:498) > [vm2] at > sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:357) > [vm2] at sun.rmi.transport.Transport$1.run(Transport.java:200) > [vm2] at sun.rmi.transport.Transport$1.run(Transport.java:197) > [vm2] at java.security.AccessController.doPrivileged(Native Method) > [vm2] at sun.rmi.transport.Transport.serviceCall(Transport.java:196) > [vm2] at > sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:573) > [vm2] at > sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:834) > [vm2] at > sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:688) > [vm2] at java.security.AccessController.doPrivileged(Native Method) > [vm2] at > sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:687) > [vm2] at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > [vm2] at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > [vm2] at java.lang.Thread.run(Thread.java:748) > [vm2] Caused by: java.lang.NullPointerException > [vm2] at > org.apache.geode.internal.cache.FilterProfile.fillInInterestRoutingInfo(FilterProfile.java:1343) > [vm2] at > org.apache.geode.internal.cache.FilterProfile.getFilterRoutingInfoPart1(FilterProfile.java:1097) > [vm2] at > org.apache.geode.internal.cache.CacheDistributionAdvisor.adviseFilterRouting(CacheDistributionAdvisor.java:241) > [vm2] at > org.apache.geode.internal.cache.TXState.attachFilterProfileInformation(TXState.java:566) > [vm2] at > org.apache.geode.internal.cache.TXState.commit(TXState.java:480) > [vm2] at > org.apache.geode.internal.cache.TXStateProxyImpl.commit(TXStateProxyImpl.java:211) > [vm2] at > org.apache.geode.internal.cache.TXManagerImpl.commit(TXManagerImpl.java:426) > [vm2] at > org.apache.geode.internal.cache.tier.sockets.command.CommitCommand.commitTransaction(CommitCommand.java:97) > [vm2] at > org.apache.geode.internal.cache.tier.sockets.command.CommitCommand.cmdExecute(CommitCommand.java:85) > [vm2] at > org.apache.geode.internal.cache.tier.sockets.BaseCommand.execute(BaseCommand.java:177) > [vm2] at > org.apache.geode.internal.cache.tier.sockets.ServerConnection.doNormalMessage(ServerConnection.java:848) > [vm2] at > org.apache.geode.internal.cache.tier.sockets.OriginalServerConnection.doOneMessage(OriginalServerConnection.java:72) > [vm2] at > org.apache.geode.internal.cache.tier.sockets.ServerConnection.run(ServerConnection.java:1212) > [vm2] at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > [vm2] at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > [vm2] at > org.apache.geode.internal.cache.tier.sockets.AcceptorImpl.lambda$initializeServerConnectionThreadPool$3(AcceptorImpl.java:665) > [vm2] at > org.apache.geode.internal.logging.LoggingThreadFactory.lambda$newThread$0(LoggingThreadFactory.java:121) > [vm2] ... 1 more -- This message was sent by Atlassian JIRA (v7.6.14#76016)