[improvement](fe) Add more log about add/remove frontends (#26306)
This commit is contained in:
@ -2679,6 +2679,8 @@ public class Env {
|
||||
}
|
||||
|
||||
fe = new Frontend(role, nodeName, host, editLogPort);
|
||||
LOG.info("add frontend: {}", fe);
|
||||
|
||||
frontends.put(nodeName, fe);
|
||||
BDBHA bdbha = (BDBHA) haProtocol;
|
||||
if (role == FrontendNodeType.FOLLOWER || role == FrontendNodeType.REPLICA) {
|
||||
@ -2709,6 +2711,8 @@ public class Env {
|
||||
if (fe == null) {
|
||||
throw new DdlException("frontend does not exist, nodeName:" + nodeName);
|
||||
}
|
||||
|
||||
LOG.info("modify frontend with new host: {}, exist frontend: {}", fe.getHost(), fe);
|
||||
boolean needLog = false;
|
||||
// we use hostname as address of bdbha, so we don't need to update node address when ip changed
|
||||
if (!Strings.isNullOrEmpty(destHost) && !destHost.equals(fe.getHost())) {
|
||||
@ -2743,6 +2747,9 @@ public class Env {
|
||||
throw new DdlException(role.toString() + " does not exist[" + NetUtils
|
||||
.getHostPortInAccessibleFormat(host, port) + "]");
|
||||
}
|
||||
|
||||
LOG.info("remove frontend: {}", fe);
|
||||
|
||||
frontends.remove(fe.getNodeName());
|
||||
removedFrontends.add(fe.getNodeName());
|
||||
|
||||
@ -3535,6 +3542,7 @@ public class Env {
|
||||
}
|
||||
return;
|
||||
}
|
||||
LOG.info("replay add frontend: {}", fe);
|
||||
frontends.put(fe.getNodeName(), fe);
|
||||
if (fe.getRole() == FrontendNodeType.FOLLOWER || fe.getRole() == FrontendNodeType.REPLICA) {
|
||||
// DO NOT add helper sockets here, cause BDBHA is not instantiated yet.
|
||||
@ -3557,6 +3565,7 @@ public class Env {
|
||||
return;
|
||||
}
|
||||
// modify fe in frontends
|
||||
LOG.info("replay modify frontend with new host: {}, exist frontend: {}", fe.getHost(), existFe);
|
||||
existFe.setHost(fe.getHost());
|
||||
} finally {
|
||||
unlock();
|
||||
@ -3568,9 +3577,10 @@ public class Env {
|
||||
try {
|
||||
Frontend removedFe = frontends.remove(frontend.getNodeName());
|
||||
if (removedFe == null) {
|
||||
LOG.error(frontend.toString() + " does not exist.");
|
||||
LOG.error(frontend + " does not exist.");
|
||||
return;
|
||||
}
|
||||
LOG.info("replay drop frontend: {}", removedFe);
|
||||
if (removedFe.getRole() == FrontendNodeType.FOLLOWER || removedFe.getRole() == FrontendNodeType.REPLICA) {
|
||||
removeHelperNode(removedFe.getHost(), removedFe.getEditLogPort());
|
||||
}
|
||||
|
||||
@ -163,6 +163,7 @@ public class BDBHA implements HAProtocol {
|
||||
return false;
|
||||
}
|
||||
try {
|
||||
LOG.info("remove electable node: {}", nodeName);
|
||||
replicationGroupAdmin.removeMember(nodeName);
|
||||
} catch (MemberNotFoundException e) {
|
||||
LOG.error("the deleting electable node is not found {}", nodeName, e);
|
||||
@ -180,6 +181,7 @@ public class BDBHA implements HAProtocol {
|
||||
return false;
|
||||
}
|
||||
try {
|
||||
LOG.info("update electable node {} with new host name: {}, port: {}", nodeName, newHostName, port);
|
||||
replicationGroupAdmin.updateAddress(nodeName, newHostName, port);
|
||||
} catch (MemberNotFoundException e) {
|
||||
LOG.error("the updating electable node is not found {}", nodeName, e);
|
||||
@ -214,8 +216,11 @@ public class BDBHA implements HAProtocol {
|
||||
unReadyElectableNodes.add(nodeName);
|
||||
ReplicatedEnvironment replicatedEnvironment = environment.getReplicatedEnvironment();
|
||||
if (replicatedEnvironment != null) {
|
||||
int override = totalFollowerCount - unReadyElectableNodes.size();
|
||||
LOG.info("set electable group size override to {}, total follower count: {}, add unready node: {}",
|
||||
override, totalFollowerCount, nodeName);
|
||||
replicatedEnvironment.setRepMutableConfig(new ReplicationMutableConfig()
|
||||
.setElectableGroupSizeOverride(totalFollowerCount - unReadyElectableNodes.size()));
|
||||
.setElectableGroupSizeOverride(override));
|
||||
}
|
||||
}
|
||||
|
||||
@ -226,11 +231,16 @@ public class BDBHA implements HAProtocol {
|
||||
if (unReadyElectableNodes.isEmpty()) {
|
||||
// Setting ElectableGroupSizeOverride to 0 means remove this config,
|
||||
// and bdb will use the normal electable group size.
|
||||
LOG.info("remove electable group size override, total follower count: {}, remove unready node: {}",
|
||||
totalFollowerCount, nodeName);
|
||||
replicatedEnvironment.setRepMutableConfig(
|
||||
new ReplicationMutableConfig().setElectableGroupSizeOverride(0));
|
||||
} else {
|
||||
int override = totalFollowerCount - unReadyElectableNodes.size();
|
||||
LOG.info("set electable group size override to {}, total follower count: {}, remove unready node: {}",
|
||||
override, totalFollowerCount, nodeName);
|
||||
replicatedEnvironment.setRepMutableConfig(new ReplicationMutableConfig()
|
||||
.setElectableGroupSizeOverride(totalFollowerCount - unReadyElectableNodes.size()));
|
||||
.setElectableGroupSizeOverride(override));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user