Darrel Schneider created GEODE-5573: ---------------------------------------
Summary: evict destroy can leave a region entry in the cache whose value is REMOVE_PHASE1 Key: GEODE-5573 URL: https://issues.apache.org/jira/browse/GEODE-5573 Project: Geode Issue Type: Bug Components: eviction Reporter: Darrel Schneider The RegionMapDestroy code has a finally block to remove the region entry that the destroy temporarily added if the destroy operation failed for some region. The code in question is in: org.apache.geode.internal.cache.map.RegionMapDestroy.retryRemoveWithTombstone() At the end of the method it does a putIfAbsent if the new region entry that contains REMOVE_PHASE1 but then only cleans it up (by calling removeEntryOrLeaveTombstone) if the current destroy operation is not from eviction. So in the eviction case we can end up leaving this REMOVE_PHASE1 entry in the map. The contract for REMOVE_PHASE1 is that whoever set the region entry to REMOVE_PHASE1 will also set it to REMOVE_PHASE2. But that never happens in this case. I'm not sure if this will cause a serious problem in our current code base but it would be best to have eviction clean this entry up or to not even create the entry in the first place if that can be done. -- This message was sent by Atlassian JIRA (v7.6.3#76005)