This is an automated email from the ASF dual-hosted git repository. haonan pushed a commit to branch fix_concurrent_delete_bug in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 3acad35c53cd0b165bb319b529fac5743a7b767f Author: HTHou <[email protected]> AuthorDate: Wed Jan 14 15:17:21 2026 +0800 Fix concurrent delete and flush error --- .../org/apache/iotdb/db/storageengine/dataregion/DataRegion.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/DataRegion.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/DataRegion.java index 746e042ab14..b8101fbd443 100644 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/DataRegion.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/DataRegion.java @@ -3249,6 +3249,12 @@ public class DataRegion implements IDataRegionForQuery { continue; } + // the tsfile may not be closed here, it should not be added in deletedByFiles + if (!sealedTsFile.isClosed()) { + deletedByMods.add(sealedTsFile); + continue; + } + ITimeIndex timeIndex = sealedTsFile.getTimeIndex(); if ((timeIndex instanceof ArrayDeviceTimeIndex)
