/** * Computes pingable_mbrs (based on the current membership and the suspected members) and ping_dest * @param remove The member to be removed from pingable_mbrs */ @GuardedBy("lock") protected void computePingDest(Address remove) { if(remove != null) pingable_mbrs.remove(remove); else { pingable_mbrs.clear(); pingable_mbrs.addAll(members); pingable_mbrs.removeAll(bcast_task.getSuspectedMembers()); } Address old_ping_dest=ping_dest; ping_dest=getPingDest(pingable_mbrs); if(Util.different(old_ping_dest, ping_dest)) { num_tries.set(1); last_ack=System.nanoTime(); } }
public String getPingDest() { return p.getPingDest(); }
private void unsuspect(Address mbr) { bcast_task.removeSuspectedMember(mbr); pingable_mbrs.clear(); pingable_mbrs.addAll(members); pingable_mbrs.removeAll(bcast_task.getSuspectedMembers()); ping_dest=(Address)getPingDest(pingable_mbrs); if(ping_dest != null) { try { startMonitor(); } catch(Exception ex) { if(log.isWarnEnabled()) log.warn("exception when calling unsuspect(): " + ex); } } }
/** * Computes pingable_mbrs (based on the current membership and the suspected members) and ping_dest * @param remove The member to be removed from pingable_mbrs */ @GuardedBy("lock") protected void computePingDest(Address remove) { if(remove != null) pingable_mbrs.remove(remove); else { pingable_mbrs.clear(); pingable_mbrs.addAll(members); pingable_mbrs.removeAll(bcast_task.getSuspectedMembers()); } Address old_ping_dest=ping_dest; ping_dest=getPingDest(pingable_mbrs); if(Util.different(old_ping_dest, ping_dest)) { num_tries.set(1); last_ack=System.nanoTime(); } }
public Object down(Event evt) { switch(evt.getType()) { case Event.VIEW_CHANGE: down_prot.down(evt); stop(); synchronized(this) { View v=(View)evt.getArg(); members.clear(); members.addAll(v.getMembers()); bcast_task.adjustSuspectedMembers(members); pingable_mbrs.clear(); pingable_mbrs.addAll(members); ping_dest=(Address)getPingDest(pingable_mbrs); if(ping_dest != null) { try { startMonitor(); } catch(Exception ex) { if(log.isWarnEnabled()) log.warn("exception when calling startMonitor(): " + ex); } } } return null; case Event.UNSUSPECT: unsuspect((Address)evt.getArg()); return down_prot.down(evt); } return down_prot.down(evt); }
Address previewNextPingDest = (Address)getPingDest(pingable_mbrs); ping_dest=(Address)getPingDest(pingable_mbrs);