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 <[email protected]>
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