You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by xi...@apache.org on 2022/07/14 02:27:49 UTC

[iotdb] branch master updated: finish (#6669)

This is an automated email from the ASF dual-hosted git repository.

xingtanzjr 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 343f84697e finish (#6669)
343f84697e is described below

commit 343f84697e9b971d86586dd142109b5b3c30613a
Author: YongzaoDan <33...@users.noreply.github.com>
AuthorDate: Thu Jul 14 10:27:43 2022 +0800

    finish (#6669)
---
 .../iotdb/confignode/manager/load/heartbeat/RegionGroupCache.java   | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/heartbeat/RegionGroupCache.java b/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/heartbeat/RegionGroupCache.java
index ce799864a6..fbca007f5c 100644
--- a/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/heartbeat/RegionGroupCache.java
+++ b/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/heartbeat/RegionGroupCache.java
@@ -68,6 +68,7 @@ public class RegionGroupCache implements IRegionGroupCache {
   public boolean updateLoadStatistic() {
     long updateVersion = Long.MIN_VALUE;
     int updateLeaderDataNodeId = -1;
+    int originLeaderDataNodeId = leaderDataNodeId.get();
 
     synchronized (slidingWindow) {
       for (LinkedList<RegionHeartbeatSample> samples : slidingWindow.values()) {
@@ -82,11 +83,12 @@ public class RegionGroupCache implements IRegionGroupCache {
     }
 
     if (updateVersion > versionTimestamp.get()) {
+      // Only update when the leadership information is latest
       versionTimestamp.set(updateVersion);
       leaderDataNodeId.set(updateLeaderDataNodeId);
-      return true;
     }
-    return false;
+
+    return !(originLeaderDataNodeId == leaderDataNodeId.get());
   }
 
   @Override