This is an automated email from the ASF dual-hosted git repository. xingtanzjr pushed a commit to branch speed_up_restart_recover in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 0105c55388b7555fe114c8313bd929bbf3099d9e Author: HTHou <[email protected]> AuthorDate: Thu Oct 26 19:40:03 2023 +0800 initCompaction after all databases are ready --- .../org/apache/iotdb/db/storageengine/StorageEngine.java | 5 +++++ .../iotdb/db/storageengine/dataregion/DataRegion.java | 13 +------------ 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/StorageEngine.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/StorageEngine.java index 1ee4eb12335..d2741824d08 100644 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/StorageEngine.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/StorageEngine.java @@ -296,6 +296,11 @@ public class StorageEngine implements IService { } recover(); + for (DataRegion dataRegion : dataRegionMap.values()) { + if (dataRegion != null) { + dataRegion.initCompaction(); + } + } ttlCheckThread = IoTDBThreadPoolFactory.newSingleThreadScheduledExecutor(ThreadName.TTL_CHECK.getName()); 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 226a00f0a58..b5bf310c6e7 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 @@ -564,17 +564,6 @@ public class DataRegion implements IDataRegionForQuery { } else { logger.info("The data region {}[{}] is recovered successfully", databaseName, dataRegionId); } - - while (!StorageEngine.getInstance().isAllSgReady()) { - try { - TimeUnit.MILLISECONDS.sleep(1000); - } catch (InterruptedException e) { - Thread.currentThread().interrupt(); - return; - } - } - // recover and start timed compaction thread - initCompaction(); } private void updateLastFlushTime(TsFileResource resource, boolean isSeq) { @@ -591,7 +580,7 @@ public class DataRegion implements IDataRegionForQuery { } } - private void initCompaction() { + public void initCompaction() { if (!config.isEnableSeqSpaceCompaction() && !config.isEnableUnseqSpaceCompaction() && !config.isEnableCrossSpaceCompaction()) {
