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 022f9e8cd120aee7f64806311ba8cefbce79fb49 Author: HTHou <[email protected]> AuthorDate: Thu Oct 26 18:33:18 2023 +0800 initCompaction after all databases are ready --- .../iotdb/db/storageengine/dataregion/DataRegion.java | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) 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 0eed0ceefcf..226a00f0a58 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 @@ -559,14 +559,22 @@ public class DataRegion implements IDataRegionForQuery { throw new DataRegionException(e); } - // recover and start timed compaction thread - initCompaction(); - if (StorageEngine.getInstance().isAllSgReady()) { logger.info("The data region {}[{}] is created successfully", databaseName, dataRegionId); } 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) {
