/** * Creates a new RedundancyLogger. * @param prhaRedundancyProvider */ public RedundancyLogger(PRHARedundancyProvider prhaRedundancyProvider) { super(prhaRedundancyProvider); this.logger = redundancyProvider.getLogger(); PartitionedRegion baseRegion = ColocationHelper.getLeaderRegion(redundancyProvider.prRegion); List<PartitionedRegion> colocatedRegions = ColocationHelper.getColocatedChildRegions(baseRegion); List<RegionStatus> allRegions = new ArrayList<RegionStatus>(colocatedRegions.size() + 1); if(baseRegion.getDataPolicy().withPersistence()) { allRegions.add(new RegionStatus(baseRegion)); } for(PartitionedRegion region : colocatedRegions) { if(region.getDataPolicy().withPersistence()) { allRegions.add(new RegionStatus(region)); } } this.regions = Collections.unmodifiableList(allRegions); this.allBucketsRecoveredFromDisk = redundancyProvider.getAllBucketsRecoveredFromDiskLatch(); this.membershipChanged = true; addListeners(); }
Map<PersistentMemberID, Set<Integer>> offlineMembers = getMembersToWaitFor(true); Map<PersistentMemberID, Set<Integer>> allMembersToWaitFor= getMembersToWaitFor(false); Set<Integer> missingBuckets = getAllWaitingBuckets(offlineMembers); String message = LocalizedStrings .CreatePersistentRegionProcessor_WAITING_FOR_OFFLINE_BUCKET_MEMBERS Set<String> membersToWaitForLogEntries = new HashSet<String>(); Set<Integer> missingBuckets = getAllWaitingBuckets(allMembersToWaitFor); TransformUtils.transform(allMembersToWaitFor.entrySet(), membersToWaitForLogEntries, TransformUtils.persistentMemberEntryToLogEntryTransformer); logDoneMessage();
Map<PersistentMemberID, Set<Integer>> offlineMembers = getMembersToWaitFor(true); Map<PersistentMemberID, Set<Integer>> allMembersToWaitFor= getMembersToWaitFor(false); Set<Integer> missingBuckets = getAllWaitingBuckets(offlineMembers); Set<String> membersToWaitForLogEntries = new HashSet<String>(); Set<Integer> missingBuckets = getAllWaitingBuckets(allMembersToWaitFor); TransformUtils.transform(allMembersToWaitFor.entrySet(), membersToWaitForLogEntries, TransformUtils.persistentMemberEntryToLogEntryTransformer); logDoneMessage();
/** * Creates a new RedundancyLogger. * @param prhaRedundancyProvider */ public RedundancyLogger(PRHARedundancyProvider prhaRedundancyProvider) { super(prhaRedundancyProvider); PartitionedRegion baseRegion = ColocationHelper.getLeaderRegion(redundancyProvider.prRegion); List<PartitionedRegion> colocatedRegions = ColocationHelper.getColocatedChildRegions(baseRegion); List<RegionStatus> allRegions = new ArrayList<RegionStatus>(colocatedRegions.size() + 1); if(baseRegion.getDataPolicy().withPersistence()) { allRegions.add(new RegionStatus(baseRegion)); } for(PartitionedRegion region : colocatedRegions) { if(region.getDataPolicy().withPersistence()) { allRegions.add(new RegionStatus(region)); } } this.regions = Collections.unmodifiableList(allRegions); this.allBucketsRecoveredFromDisk = redundancyProvider.getAllBucketsRecoveredFromDiskLatch(); this.membershipChanged = true; addListeners(); }
/** * Removes this RedundancyLogger as a persistence listener from all the region's bucket advisors. */ private void removeListeners() { for(RegionStatus region : regions) { region.removeListeners(); } }
public RegionStatus(PartitionedRegion region) { this.thisMember = createPersistentMemberID(region); this.region = region.getFullPath(); this.bucketRegions = region.getRegionAdvisor().getProxyBucketArray(); }
/** * Add this RedundancyLogger as a persistence listener to all the region's bucket advisors. */ private void addListeners() { for(RegionStatus region : regions) { region.addListeners(); } }
public RegionStatus(PartitionedRegion region) { this.thisMember = createPersistentMemberID(region); this.region = region.getFullPath(); this.bucketRegions = region.getRegionAdvisor().getProxyBucketArray(); }
/** * Removes this RedundancyLogger as a persistence listener from all the region's bucket advisors. */ private void removeListeners() { for(RegionStatus region : regions) { region.removeListeners(); } }
/** * Add this RedundancyLogger as a persistence listener to all the region's bucket advisors. */ private void addListeners() { for(RegionStatus region : regions) { region.addListeners(); } }