From 672aa575a4b356056676d89db5e91936f50d54ed Mon Sep 17 00:00:00 2001 From: Yongzao <532741407@qq.com> Date: Tue, 20 Oct 2026 20:58:24 +0800 Subject: [PATCH] Fix DataNode removal rollback cleanup --- .../procedure/impl/node/RemoveDataNodesProcedure.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/node/RemoveDataNodesProcedure.java b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/node/RemoveDataNodesProcedure.java index 06986a724587..673228570785 100644 --- a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/node/RemoveDataNodesProcedure.java +++ b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/node/RemoveDataNodesProcedure.java @@ -291,7 +291,9 @@ protected long getRollbackRetryTimeout() { @Override protected boolean isRollbackSupported(RemoveDataNodeState state) { - return false; + // Child migration failures are reported after the parent has advanced to STOP_DATA_NODE. + // Roll back there so drained nodes are stopped and failed migrations restore their statuses. + return state == RemoveDataNodeState.STOP_DATA_NODE; } /**