This is an automated email from the ASF dual-hosted git repository.
dataroaring pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new d9621404b31 [improvement](fe) Add more log about add/remove frontends
(#26306)
d9621404b31 is described below
commit d9621404b313c39a33ee495329440d8466f7a0f5
Author: walter <[email protected]>
AuthorDate: Thu Nov 2 20:19:51 2023 +0800
[improvement](fe) Add more log about add/remove frontends (#26306)
---
fe/fe-core/src/main/java/org/apache/doris/catalog/Env.java | 12 +++++++++++-
fe/fe-core/src/main/java/org/apache/doris/ha/BDBHA.java | 14 ++++++++++++--
2 files changed, 23 insertions(+), 3 deletions(-)
diff --git a/fe/fe-core/src/main/java/org/apache/doris/catalog/Env.java
b/fe/fe-core/src/main/java/org/apache/doris/catalog/Env.java
index f1cdf47b33f..29122a1042b 100755
--- a/fe/fe-core/src/main/java/org/apache/doris/catalog/Env.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/catalog/Env.java
@@ -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());
}
diff --git a/fe/fe-core/src/main/java/org/apache/doris/ha/BDBHA.java
b/fe/fe-core/src/main/java/org/apache/doris/ha/BDBHA.java
index 802101fcfde..40de7329222 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/ha/BDBHA.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/ha/BDBHA.java
@@ -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));
}
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]