This is an automated email from the ASF dual-hosted git repository. jiangtian pushed a commit to branch add_restart_logs in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 81c359c1754688125cd9ab174fb450c36fe0438e Author: jt <[email protected]> AuthorDate: Tue Oct 13 12:44:37 2020 +0800 add restart logs --- .../main/java/org/apache/iotdb/db/conf/IoTDBConfig.java | 2 +- .../db/engine/storagegroup/StorageGroupProcessor.java | 16 +++++++++++++++- .../src/main/java/org/apache/iotdb/db/service/IoTDB.java | 4 +++- .../db/writelog/recover/TsFileRecoverPerformer.java | 2 ++ 4 files changed, 21 insertions(+), 3 deletions(-) diff --git a/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java b/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java index 54cf9e3..3ed0126 100644 --- a/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java +++ b/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java @@ -136,7 +136,7 @@ public class IoTDBConfig { /** * Is dynamic parameter adapter enable. */ - private boolean enableParameterAdapter = true; + private boolean enableParameterAdapter = false; /** * Is the write ahead log enable. diff --git a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java index a11080d..be3d742 100755 --- a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java +++ b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java @@ -284,7 +284,8 @@ public class StorageGroupProcessor { } private void recover() throws StorageGroupProcessorException { - logger.info("recover Storage Group {}", storageGroupName); + long recoverStart = System.currentTimeMillis(); + logger.info("recovering Storage Group {}", storageGroupName); try { // collect candidate TsFiles from sequential and unsequential data directory @@ -305,12 +306,16 @@ public class StorageGroupProcessor { tmpSeqTsFiles); Map<Long, List<TsFileResource>> partitionTmpUnseqTsFiles = splitResourcesByPartition( tmpUnseqTsFiles); + long innerStart = System.currentTimeMillis(); for (List<TsFileResource> value : partitionTmpSeqTsFiles.values()) { recoverTsFiles(value, true); } + logger.info("Recovery of seq files costs {}ms", System.currentTimeMillis() - innerStart); + innerStart = System.currentTimeMillis(); for (List<TsFileResource> value : partitionTmpUnseqTsFiles.values()) { recoverTsFiles(value, false); } + logger.info("Recovery of unseq files costs {}ms", System.currentTimeMillis() - innerStart); for (TsFileResource resource : tsFileManagement.getTsFileList(true)) { long partitionNum = resource.getTimePartition(); @@ -336,12 +341,16 @@ public class StorageGroupProcessor { tsFileManagement.getTsFileList(false), storageGroupSysDir.getPath(), this::mergeEndAction, taskName, IoTDBDescriptor.getInstance().getConfig().isForceFullMerge(), storageGroupName); + + innerStart = System.currentTimeMillis(); logger.info("{} a RecoverMergeTask {} starts...", storageGroupName, taskName); recoverMergeTask .recoverMerge(IoTDBDescriptor.getInstance().getConfig().isContinueMergeAfterReboot()); if (!IoTDBDescriptor.getInstance().getConfig().isContinueMergeAfterReboot()) { mergingMods.delete(); } + logger.info("{} a RecoverMergeTask {} ends after {}ms", storageGroupName, taskName, + System.currentTimeMillis() - innerStart); updateLastestFlushedTime(); } catch (IOException | MetadataException e) { @@ -364,6 +373,8 @@ public class StorageGroupProcessor { .putAll(endTimeMap); globalLatestFlushedTimeForEachDevice.putAll(endTimeMap); } + logger.info("recovered Storage Group {} after {}ms", storageGroupName, + System.currentTimeMillis() - recoverStart); } private void updatePartitionFileVersion(long partitionNum, long fileVersion) { @@ -563,7 +574,10 @@ public class StorageGroupProcessor { RestorableTsFileIOWriter writer; try { + long start = System.currentTimeMillis(); writer = recoverPerformer.recover(); + logger.debug("Recovery of {} costs {}ms", tsFileResource.getTsFile(), + System.currentTimeMillis() - start); } catch (StorageGroupProcessorException e) { logger.warn("Skip TsFile: {} because of error in recover: ", tsFileResource.getTsFilePath(), e); diff --git a/server/src/main/java/org/apache/iotdb/db/service/IoTDB.java b/server/src/main/java/org/apache/iotdb/db/service/IoTDB.java index 0aa3fc3..b5281e1 100644 --- a/server/src/main/java/org/apache/iotdb/db/service/IoTDB.java +++ b/server/src/main/java/org/apache/iotdb/db/service/IoTDB.java @@ -67,6 +67,7 @@ public class IoTDB implements IoTDBMBean { } public void active() { + long startTime = System.currentTimeMillis(); StartupChecks checks = new StartupChecks().withDefaultTest(); try { checks.verify(); @@ -84,7 +85,8 @@ public class IoTDB implements IoTDBMBean { logger.error("{} exit", IoTDBConstant.GLOBAL_DB_NAME); return; } - logger.info("{} has started.", IoTDBConstant.GLOBAL_DB_NAME); + logger.info("{} has started after {}ms.", IoTDBConstant.GLOBAL_DB_NAME, + System.currentTimeMillis() - startTime); } private void setUp() throws StartupException { diff --git a/server/src/main/java/org/apache/iotdb/db/writelog/recover/TsFileRecoverPerformer.java b/server/src/main/java/org/apache/iotdb/db/writelog/recover/TsFileRecoverPerformer.java index 4f1be33..7ae83b9 100644 --- a/server/src/main/java/org/apache/iotdb/db/writelog/recover/TsFileRecoverPerformer.java +++ b/server/src/main/java/org/apache/iotdb/db/writelog/recover/TsFileRecoverPerformer.java @@ -123,7 +123,9 @@ public class TsFileRecoverPerformer { recoverResourceFromWriter(restorableTsFileIOWriter); // redo logs + long start = System.currentTimeMillis(); redoLogs(restorableTsFileIOWriter); + logger.debug("Redoing logs of {} costs {}ms", file, System.currentTimeMillis() - start); // clean logs try {
