You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Anilkumar Gingade (JIRA)" <ji...@apache.org> on 2018/09/14 22:30:00 UTC
[jira] [Created] (GEODE-5740) EntryNotFoundException is thrown on a
retried operation
Anilkumar Gingade created GEODE-5740:
----------------------------------------
Summary: EntryNotFoundException is thrown on a retried operation
Key: GEODE-5740
URL: https://issues.apache.org/jira/browse/GEODE-5740
Project: Geode
Issue Type: Bug
Components: regions
Reporter: Anilkumar Gingade
On connection failures or timeout scenario; the operations are tried on another member. In case of destroy operation, the retried operation can throw EntryNotFoundException.
Scenario:
- Destroy is performed by Partitioned Region Accessor
- This gets applied on Node1; replicates it to Node3. Does not replicates to Node2.
- Node1 cache closes; before sending message back to accessor.
- Node2 and Node3 does region sync
- Accessor retries the op on Node2. Since its already applied Node2, it throws EntryNotFoundException
org.apache.geode.cache.EntryNotFoundException: Entry not found for key Object_58173
at org.apache.geode.internal.cache.LocalRegion.checkEntryNotFound(LocalRegion.java:2772)
at org.apache.geode.internal.cache.map.RegionMapDestroy.handleEntryNotFound(RegionMapDestroy.java:562)
at org.apache.geode.internal.cache.map.RegionMapDestroy.retryRemoveWithTombstone(RegionMapDestroy.java:366)
at org.apache.geode.internal.cache.map.RegionMapDestroy.checkTombstoneAndConcurrency(RegionMapDestroy.java:196)
at org.apache.geode.internal.cache.map.RegionMapDestroy.destroy(RegionMapDestroy.java:144)
at org.apache.geode.internal.cache.AbstractRegionMap.destroy(AbstractRegionMap.java:1022)
at org.apache.geode.internal.cache.LocalRegion.mapDestroy(LocalRegion.java:6574)
at org.apache.geode.internal.cache.LocalRegion.mapDestroy(LocalRegion.java:6548)
at org.apache.geode.internal.cache.BucketRegion.basicDestroy(BucketRegion.java:1195)
at org.apache.geode.internal.cache.PartitionedRegionDataStore.destroyLocally(PartitionedRegionDataStore.java:1360)
at org.apache.geode.internal.cache.PartitionedRegionDataView.destroyOnRemote(PartitionedRegionDataView.java:107)
at org.apache.geode.internal.cache.partitioned.DestroyMessage.operateOnPartitionedRegion(DestroyMessage.java:268)
at org.apache.geode.internal.cache.partitioned.PartitionMessage.process(PartitionMessage.java:328)
at org.apache.geode.distributed.internal.DistributionMessage.scheduleAction(DistributionMessage.java:369)
at org.apache.geode.distributed.internal.DistributionMessage.schedule(DistributionMessage.java:427)
at org.apache.geode.distributed.internal.ClusterDistributionManager.scheduleIncomingMessage(ClusterDistributionManager.java:3223)
at org.apache.geode.distributed.internal.ClusterDistributionManager.handleIncomingDMsg(ClusterDistributionManager.java:2889)
at org.apache.geode.distributed.internal.ClusterDistributionManager.access$1700(ClusterDistributionManager.java:112)
at org.apache.geode.distributed.internal.ClusterDistributionManager$DMListener.messageReceived(ClusterDistributionManager.java:3992)
at org.apache.geode.distributed.internal.membership.gms.mgr.GMSMembershipManager.dispatchMessage(GMSMembershipManager.java:1118)
at org.apache.geode.distributed.internal.membership.gms.mgr.GMSMembershipManager.handleOrDeferMessage(GMSMembershipManager.java:1037)
at org.apache.geode.distributed.internal.membership.gms.mgr.GMSMembershipManager$MyDCReceiver.messageReceived(GMSMembershipManager.java:400)
at org.apache.geode.distributed.internal.direct.DirectChannel.receive(DirectChannel.java:728)
at org.apache.geode.internal.tcp.TCPConduit.messageReceived(TCPConduit.java:868)
at org.apache.geode.internal.tcp.Connection.dispatchMessage(Connection.java:3965)
at org.apache.geode.internal.tcp.Connection.processNIOBuffer(Connection.java:3551)
at org.apache.geode.internal.tcp.Connection.runNioReader(Connection.java:1827)
at org.apache.geode.internal.tcp.Connection.run(Connection.java:1688)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)