/** * Start listening for persistent view updates and apply any * updates that have already happened. * * This method should be called after we have decided that there is * no conflicting persistent exception. * * Fix for bug 44045. */ protected void beginUpdatingPersistentView() { synchronized(lock) { //Only update the view if it is has not already happened. if(!shouldUpdatePersistentView) { shouldUpdatePersistentView = true; Map<InternalDistributedMember, PersistentMemberID> onlineMembers = advisor.adviseInitializedPersistentMembers(); for(Map.Entry<InternalDistributedMember, PersistentMemberID>entry : onlineMembers.entrySet()) { memberOnline(entry.getKey(), entry.getValue()); } } } }
/** * Start listening for persistent view updates and apply any * updates that have already happened. * * This method should be called after we have decided that there is * no conflicting persistent exception. * * Fix for bug 44045. */ protected void beginUpdatingPersistentView() { synchronized(lock) { //Only update the view if it is has not already happened. if(!shouldUpdatePersistentView) { shouldUpdatePersistentView = true; Map<InternalDistributedMember, PersistentMemberID> onlineMembers = advisor.adviseInitializedPersistentMembers(); for(Map.Entry<InternalDistributedMember, PersistentMemberID>entry : onlineMembers.entrySet()) { memberOnline(entry.getKey(), entry.getValue()); } } } }
/** * A persistent member has gone offline. Log the offline member and log which persistent members * are still online (the current persistent view). */ @Override public void memberOffline(InternalDistributedMember member, PersistentMemberID persistentID) { if(logger.isDebugEnabled()) { Set<String> onlineMembers = new HashSet<String>(); Set<PersistentMemberID> members = new HashSet<PersistentMemberID>(); members.addAll(PersistenceAdvisorImpl.this.advisor.adviseInitializedPersistentMembers().values()); members.remove(persistentID); TransformUtils.transform(members, onlineMembers, TransformUtils.persistentMemberIdToLogEntryTransformer); logger.info(LocalizedMessage.create(LocalizedStrings.PersistenceAdvisorImpl_PERSISTENT_VIEW, new Object[] {PersistenceAdvisorImpl.this.regionPath,TransformUtils.persistentMemberIdToLogEntryTransformer.transform(persistentID),onlineMembers})); } } });
/** * A persistent member has gone offline. Log the offline member and log which persistent members * are still online (the current persistent view). */ @Override public void memberOffline(InternalDistributedMember member, PersistentMemberID persistentID) { if(PersistenceAdvisorImpl.this.logger.fineEnabled()) { Set<String> onlineMembers = new HashSet<String>(); Set<PersistentMemberID> members = new HashSet<PersistentMemberID>(); members.addAll(PersistenceAdvisorImpl.this.advisor.adviseInitializedPersistentMembers().values()); members.remove(persistentID); TransformUtils.transform(members, onlineMembers, TransformUtils.persistentMemberIdToLogEntryTransformer); PersistenceAdvisorImpl.this.logger.info(LocalizedStrings.PersistenceAdvisorImpl_PERSISTENT_VIEW, new Object[] {PersistenceAdvisorImpl.this.regionPath,TransformUtils.persistentMemberIdToLogEntryTransformer.transform(persistentID),onlineMembers}); } } });
public PersistentMembershipView getMembershipView() { if(!initialized) { return null; } Set<PersistentMemberID> offlineMembers = getPersistedMembers(); Map<InternalDistributedMember, PersistentMemberID> onlineMembers = advisor .adviseInitializedPersistentMembers(); offlineMembers.removeAll(onlineMembers.values()); PersistentMemberID myId = getPersistentID(); if(myId != null) { onlineMembers.put(advisor.getDistributionManager().getDistributionManagerId(), myId); } PersistentMembershipView view = new PersistentMembershipView( offlineMembers, onlineMembers, memberManager.getRevokedMembers()); return view; }
public PersistentMembershipView getMembershipView() { if(!initialized) { return null; } Set<PersistentMemberID> offlineMembers = getPersistedMembers(); Map<InternalDistributedMember, PersistentMemberID> onlineMembers = advisor .adviseInitializedPersistentMembers(); offlineMembers.removeAll(onlineMembers.values()); PersistentMemberID myId = getPersistentID(); if(myId != null) { onlineMembers.put(advisor.getDistributionManager().getDistributionManagerId(), myId); } PersistentMembershipView view = new PersistentMembershipView( offlineMembers, onlineMembers, memberManager.getRevokedMembers()); return view; }
Map<InternalDistributedMember, PersistentMemberID> onlineMembers; if(!atomicCreation) { onlineMembers = advisor.adviseInitializedPersistentMembers(); } else {
if(!atomicCreation) { onlineMembers = advisor.adviseInitializedPersistentMembers(); trace("online members : " + onlineMembers ); } else {
public String encryptForExternal(String cmd, List<?> cmdLine, String user, String pwd) throws Exception { // boot into the distributed system to get the secret key getAdminCnx(cmd, cmdLine); // ensure that at least one JVM with persisted datadictionary must be // present if (Misc.getMemStoreBooting().getDDLQueueNoThrow().getRegion() .getCacheDistributionAdvisor().adviseInitializedPersistentMembers() .size() == 0) { throw new IllegalStateException( "No member with persistent datadictionary found!"); } String algo = this.encryptPasswordTransformation == null ? GfxdConstants.PASSWORD_PRIVATE_KEY_ALGO_DEFAULT : GemFireXDUtils .getPrivateKeyAlgorithm(this.encryptPasswordTransformation); GemFireXDUtils.initializePrivateKey(algo, this.encryptPasswordKeySize, null); return GemFireXDUtils.encrypt(pwd, this.encryptPasswordTransformation, GemFireXDUtils.getUserPasswordCipherKeyBytes(user, this.encryptPasswordTransformation, this.encryptPasswordKeySize)); }
DistributedRegion r = (DistributedRegion)event.getRegion(); Collection replicates = onlyPersistent ? r.getCacheDistributionAdvisor() .adviseInitializedPersistentMembers().keySet() : r .getCacheDistributionAdvisor().adviseInitializedReplicates(); if (replicates.isEmpty()) {
DistributedRegion r = (DistributedRegion)event.getRegion(); Collection replicates = onlyPersistent ? r.getCacheDistributionAdvisor() .adviseInitializedPersistentMembers().keySet() : r .getCacheDistributionAdvisor().adviseInitializedReplicates(); if (replicates.isEmpty()) {
DistributedRegion r = (DistributedRegion)event.getRegion(); Collection replicates = onlyPersistent ? r.getCacheDistributionAdvisor() .adviseInitializedPersistentMembers().keySet() : r .getCacheDistributionAdvisor().adviseInitializedReplicates(); if (replicates.isEmpty()) {
Map<InternalDistributedMember, PersistentMemberID> onlineMembers = advisor.adviseInitializedPersistentMembers(); if(onlineMembers != null) { if(updateMembershipView(onlineMembers.keySet())) {
Map<InternalDistributedMember, PersistentMemberID> onlineMembers = advisor.adviseInitializedPersistentMembers(); if(onlineMembers != null) { if(updateMembershipView(onlineMembers.keySet())) {
Map<InternalDistributedMember, PersistentMemberID> persistentIds = null; if(region.getDataPolicy().withPersistence()) { persistentIds = region.getDistributionAdvisor().adviseInitializedPersistentMembers();
Map<InternalDistributedMember, PersistentMemberID> persistentIds = null; if(region.getDataPolicy().withPersistence()) { persistentIds = region.getDistributionAdvisor().adviseInitializedPersistentMembers();
DistributedRegion r = (DistributedRegion)event.getRegion(); Collection<InternalDistributedMember> replicates = onlyPersistent ? r .getCacheDistributionAdvisor().adviseInitializedPersistentMembers() .keySet() : r.getCacheDistributionAdvisor() .adviseInitializedReplicates();
final DistributedRegion r = (DistributedRegion)event.getRegion(); Collection<InternalDistributedMember> replicates = onlyPersistent ? r .getCacheDistributionAdvisor().adviseInitializedPersistentMembers() .keySet() : r.getCacheDistributionAdvisor() .adviseInitializedReplicates();
DistributedRegion r = (DistributedRegion)event.getRegion(); Collection<InternalDistributedMember> replicates = onlyPersistent ? r .getCacheDistributionAdvisor().adviseInitializedPersistentMembers() .keySet() : r.getCacheDistributionAdvisor() .adviseInitializedReplicates();