in src/main/java/com/ericsson/gerrit/plugins/highavailability/peers/jgroups/JGroupsPeerInfoProvider.java [87:115]
public void viewAccepted(View view) {
log.atInfo().log("viewAccepted(view: %s) called", view);
synchronized (this) {
if (view.getMembers().size() > 2) {
log.atWarning().log(
"%d members joined the jgroups cluster %s (%s). "
+ " Only two members are supported. Members: %s",
view.getMembers().size(),
jgroupsConfig.clusterName(),
channel.getName(),
view.getMembers());
}
if (peerAddress != null && !view.getMembers().contains(peerAddress)) {
log.atInfo().log("viewAccepted(): removed peerInfo");
peerAddress = null;
peerInfo = Optional.empty();
}
}
if (view.size() > 1) {
try {
channel.send(new Message(null, myUrl));
} catch (Exception e) {
// channel communication caused an error. Can't do much about it.
log.atSevere().withCause(e).log(
"Sending a message over channel %s to cluster %s failed",
channel.getName(), jgroupsConfig.clusterName());
}
}
}