This is an automated email from the ASF dual-hosted git repository.
yongzao pushed a commit to branch ca_test
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/ca_test by this push:
new 8003cff9e94 Update RegionStatus of Unknown DataNode when removing
8003cff9e94 is described below
commit 8003cff9e94b34ef317971ccbe9a6ba41207e631
Author: YongzaoDan <[email protected]>
AuthorDate: Tue Aug 15 17:37:53 2023 +0800
Update RegionStatus of Unknown DataNode when removing
---
.../manager/load/cache/region/RegionHeartbeatSample.java | 5 +++++
.../confignode/procedure/env/ConfigNodeProcedureEnv.java | 11 +++++++++++
2 files changed, 16 insertions(+)
diff --git
a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/cache/region/RegionHeartbeatSample.java
b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/cache/region/RegionHeartbeatSample.java
index e55497bc5f2..67c221fa706 100644
---
a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/cache/region/RegionHeartbeatSample.java
+++
b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/cache/region/RegionHeartbeatSample.java
@@ -47,4 +47,9 @@ public class RegionHeartbeatSample {
public RegionStatus getStatus() {
return status;
}
+
+ public static RegionHeartbeatSample generateDefaultSample(RegionStatus
status) {
+ long currentTime = System.currentTimeMillis();
+ return new RegionHeartbeatSample(currentTime, currentTime, status);
+ }
}
diff --git
a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/ConfigNodeProcedureEnv.java
b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/ConfigNodeProcedureEnv.java
index 371243bc197..ee5fcccd681 100644
---
a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/ConfigNodeProcedureEnv.java
+++
b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/ConfigNodeProcedureEnv.java
@@ -401,6 +401,17 @@ public class ConfigNodeProcedureEnv {
NodeType.DataNode,
dataNodeLocation.getDataNodeId(),
NodeHeartbeatSample.generateDefaultSample(NodeStatus.Removing));
+ // Force update RegionStatus to Removing
+ getPartitionManager()
+ .getAllReplicaSets(dataNodeLocation.getDataNodeId())
+ .forEach(
+ replicaSet ->
+ getLoadManager()
+ .forceUpdateRegionGroupCache(
+ replicaSet.getRegionId(),
+ Collections.singletonMap(
+ dataNodeLocation.getDataNodeId(),
+
RegionHeartbeatSample.generateDefaultSample(RegionStatus.Removing))));
}
/**