You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ne...@apache.org on 2021/06/16 06:22:38 UTC
[iotdb] branch master updated: [Cluster]No need to shake hands with
itself when one node restart (#3404)
This is an automated email from the ASF dual-hosted git repository.
neuyilan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new a5e07e2 [Cluster]No need to shake hands with itself when one node restart (#3404)
a5e07e2 is described below
commit a5e07e288e83beff6571efe94bea5ee9a675ee87
Author: Houliang Qi <ne...@163.com>
AuthorDate: Wed Jun 16 14:22:08 2021 +0800
[Cluster]No need to shake hands with itself when one node restart (#3404)
---
.../org/apache/iotdb/cluster/server/member/MetaGroupMember.java | 4 ++++
.../src/main/java/org/apache/iotdb/cluster/utils/ClusterUtils.java | 6 ++++++
2 files changed, 10 insertions(+)
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/member/MetaGroupMember.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/member/MetaGroupMember.java
index 1d75920..0224c29 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/server/member/MetaGroupMember.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/member/MetaGroupMember.java
@@ -786,6 +786,10 @@ public class MetaGroupMember extends RaftMember {
/** When the node restarts, it sends handshakes to all other nodes so they may know it is back. */
private void sendHandshake() {
for (Node node : allNodes) {
+ if (ClusterUtils.nodeEqual(node, thisNode)) {
+ // no need to shake hands with yourself
+ continue;
+ }
try {
if (ClusterDescriptor.getInstance().getConfig().isUseAsyncServer()) {
AsyncMetaClient asyncClient = (AsyncMetaClient) getAsyncClient(node);
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/utils/ClusterUtils.java b/cluster/src/main/java/org/apache/iotdb/cluster/utils/ClusterUtils.java
index 4c64587..446382b 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/utils/ClusterUtils.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/utils/ClusterUtils.java
@@ -353,4 +353,10 @@ public class ClusterUtils {
}
return partitionGroup;
}
+
+ public static boolean nodeEqual(Node node1, Node node2) {
+ ClusterNode clusterNode1 = new ClusterNode(node1);
+ ClusterNode clusterNode2 = new ClusterNode(node2);
+ return clusterNode1.equals(clusterNode2);
+ }
}