diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/tsfile/TsFileResource.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/tsfile/TsFileResource.java index 8571fd2e9152..9f344c1994be 100644 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/tsfile/TsFileResource.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/tsfile/TsFileResource.java @@ -639,11 +639,13 @@ public void removeModFile() throws IOException { * file physically. */ public boolean remove() { - forceMarkDeleted(); // To release the memory occupied by pipe if held by it // Note that pipe can safely handle the case that the time index does not exist isEmpty(); - degradeTimeIndex(); + if (getStatus() != TsFileResourceStatus.UNCLOSED) { + degradeTimeIndex(); + } + forceMarkDeleted(); try { fsFactory.deleteIfExists(file); fsFactory.deleteIfExists(