This is an automated email from the ASF dual-hosted git repository. haonan pushed a commit to branch fixNoSuchFileException in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit c91ba7444b8171ccccf1c04807587f4dd2164610 Author: HTHou <[email protected]> AuthorDate: Wed Sep 4 11:37:16 2024 +0800 Fix error log when drop database or migrate region --- .../dataregion/tsfile/timeindex/FileTimeIndexCacheRecorder.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/tsfile/timeindex/FileTimeIndexCacheRecorder.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/tsfile/timeindex/FileTimeIndexCacheRecorder.java index d6eb597922e..e744085f8f0 100644 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/tsfile/timeindex/FileTimeIndexCacheRecorder.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/tsfile/timeindex/FileTimeIndexCacheRecorder.java @@ -42,7 +42,7 @@ import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; -import static org.apache.iotdb.commons.utils.FileUtils.deleteDirectoryAndEmptyParent; +import static org.apache.iotdb.commons.utils.FileUtils.deleteFileOrDirectory; import static org.apache.iotdb.db.storageengine.dataregion.tsfile.TsFileResource.getFileTimeIndexSerializedSize; public class FileTimeIndexCacheRecorder { @@ -193,10 +193,11 @@ public class FileTimeIndexCacheRecorder { } public void removeFileTimeIndexCache(int dataRegionId) { - for (FileTimeIndexCacheWriter writer : writerMap.values()) { + FileTimeIndexCacheWriter writer = writerMap.get(dataRegionId); + if (writer != null) { try { writer.close(); - deleteDirectoryAndEmptyParent(writer.getLogFile()); + deleteFileOrDirectory(writer.getLogFile(), true); } catch (IOException e) { LOGGER.warn("Meet error when close FileTimeIndexCache: {}", e.getMessage()); }
