Re: [jgroups-dev] Continuous heartbeat messages without View change
Brought to you by:
belaban
|
From: Development i. <jav...@li...> - 2017-07-20 13:31:18
|
The custom membership policy is correctly forming new view and it looks like:
import java.util.Collection;
import java.util.List;
import org.jgroups.Address;
import org.jgroups.Membership;
import org.jgroups.stack.MembershipChangePolicy;
public class CustomMembershipPolicy implements MembershipChangePolicy {
@Override
public List<Address> getNewMembership(final Collection<Address>
currentMembers, final Collection<Address> joiners,
final Collection<Address> leavers, final Collection<Address> suspects) {
Membership retval = new Membership();
// add the beefy nodes from the current membership first
for (Address addr : currentMembers) {
if (addr instanceof CustomAddress) {
retval.add(addr);
}
}
// then from joiners
for (Address addr : joiners) {
if (addr instanceof CustomAddress) {
retval.add(addr);
}
}
// then add all non-beefy current nodes
retval.add(currentMembers);
// finally the non-beefy joiners
retval.add(joiners);
retval.remove(leavers);
retval.remove(suspects);
return retval.getMembers();
}
@Override
public List<Address> getNewMembership(final
Collection<Collection<Address>> subviews) {
Membership mbrs = new Membership();
Membership retval = new Membership();
for (Collection<Address> subview : subviews) {
mbrs.add(subview);
}
for (Address addr : mbrs.getMembers()) {
if (addr instanceof CustomAddress) {
retval.add(addr);
}
}
retval.add(mbrs.getMembers());
return retval.getMembers();
}
}
Yes, I have disconnected the cable of node1. [Note: Unplugging of cable
didn't resulted in the above issue every time.]
Thanks in advance :-)
--
View this message in context: http://jgroups.1086181.n5.nabble.com/Continuous-heartbeat-messages-without-View-change-tp11352p11364.html
Sent from the JGroups - Dev mailing list archive at Nabble.com.
|