This is an automated email from the ASF dual-hosted git repository. agingade pushed a commit to branch feature/GEODE-3583-storage in repository https://gitbox.apache.org/repos/asf/geode.git
The following commit(s) were added to refs/heads/feature/GEODE-3583-storage by this push: new 0530964 GEODE-4203: Remove GemFireCacheImpl.getInstance from PartitionedRegionHelper 0530964 is described below commit 0530964e9a960e1b1174826e8d92e44f6f44dc48 Author: Anil <aging...@pivotal.io> AuthorDate: Wed Jan 10 16:27:27 2018 -0800 GEODE-4203: Remove GemFireCacheImpl.getInstance from PartitionedRegionHelper --- .../apache/geode/internal/cache/CloseCacheMessage.java | 2 +- .../geode/internal/cache/PartitionedRegionHelper.java | 16 ++++++++++------ 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/CloseCacheMessage.java b/geode-core/src/main/java/org/apache/geode/internal/cache/CloseCacheMessage.java index fccda69..523eaf6 100644 --- a/geode-core/src/main/java/org/apache/geode/internal/cache/CloseCacheMessage.java +++ b/geode-core/src/main/java/org/apache/geode/internal/cache/CloseCacheMessage.java @@ -57,7 +57,7 @@ public class CloseCacheMessage extends HighPriorityDistributionMessage implement boolean systemError = false; try { try { - PartitionedRegionHelper.cleanUpMetaDataOnNodeFailure(getSender()); + PartitionedRegionHelper.cleanUpMetaDataOnNodeFailure(dm.getCache(), getSender()); } catch (VirtualMachineError err) { systemError = true; SystemFailure.initiateFailure(err); diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegionHelper.java b/geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegionHelper.java index cb0fd0c..592e16f 100644 --- a/geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegionHelper.java +++ b/geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegionHelper.java @@ -271,7 +271,7 @@ public class PartitionedRegionHelper { root = (DistributedRegion) cache.createVMRegion(PR_ROOT_REGION_NAME, ra, new InternalRegionArguments().setIsUsedForPartitionedRegionAdmin(true) .setInternalRegion(true).setCachePerfStatsHolder(prMetaStatsHolder)); - root.getDistributionAdvisor().addMembershipListener(new MemberFailureListener()); + root.getDistributionAdvisor().addMembershipListener(new MemberFailureListener(cache)); } catch (RegionExistsException ignore) { // we avoid this before hand, but yet we have to catch it root = (DistributedRegion) cache.getRegion(PR_ROOT_REGION_NAME, true); @@ -305,15 +305,13 @@ public class PartitionedRegionHelper { * Clean the config meta data for a DistributedMember which has left the DistributedSystem, one * PartitionedRegion at a time. */ - public static void cleanUpMetaDataOnNodeFailure(DistributedMember failedMemId) { + public static void cleanUpMetaDataOnNodeFailure(InternalCache cache, + DistributedMember failedMemId) { try { - final InternalCache cache = GemFireCacheImpl.getInstance(); if (cache == null || cache.getCancelCriterion().isCancelInProgress()) { return; } - DistributionManager dm = cache.getInternalDistributedSystem().getDistributionManager(); - if (logger.isDebugEnabled()) { logger.debug("Cleaning PartitionedRegion meta data for memberId={}", failedMemId); } @@ -932,12 +930,18 @@ public class PartitionedRegionHelper { private static class MemberFailureListener implements MembershipListener { + InternalCache cache = null; + + MemberFailureListener(InternalCache cache) { + this.cache = cache; + } + public void memberJoined(InternalDistributedMember id) { } public void memberDeparted(final InternalDistributedMember id, boolean crashed) { - PartitionedRegionHelper.cleanUpMetaDataOnNodeFailure(id); + PartitionedRegionHelper.cleanUpMetaDataOnNodeFailure(cache, id); } public void memberSuspect(InternalDistributedMember id, InternalDistributedMember whoSuspected, -- To stop receiving notification emails like this one, please contact ['"commits@geode.apache.org" <commits@geode.apache.org>'].