You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by lt...@apache.org on 2019/11/08 08:38:36 UTC

[incubator-iotdb] branch add_hot_load_configuration updated: modify Directory Manager

This is an automated email from the ASF dual-hosted git repository.

lta pushed a commit to branch add_hot_load_configuration
in repository https://gitbox.apache.org/repos/asf/incubator-iotdb.git


The following commit(s) were added to refs/heads/add_hot_load_configuration by this push:
     new 99ce0d0  modify Directory Manager
99ce0d0 is described below

commit 99ce0d097f39bc74f01d0ca632715a7afe000d11
Author: lta <li...@163.com>
AuthorDate: Fri Nov 8 16:37:40 2019 +0800

    modify Directory Manager
---
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |  3 +-
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  | 13 +++---
 .../db/conf/directories/DirectoryManager.java      | 47 +++++++++++++++-------
 .../directories/strategy/DirectoryStrategy.java    | 15 +++----
 .../directories/strategy/SequenceStrategy.java     |  6 +--
 .../db/engine/querycontext/ReadOnlyMemChunk.java   |  2 +-
 .../engine/storagegroup/StorageGroupProcessor.java |  4 +-
 .../db/exception/LoadConfigurationException.java   | 37 +++++++++++++++++
 .../org/apache/iotdb/db/metadata/MManager.java     |  2 +-
 .../iotdb/db/qp/logical/crud/SFWOperator.java      |  2 +-
 .../iotdb/db/qp/logical/crud/SelectOperator.java   |  2 +-
 .../dataset/groupby/GroupByEngineDataSet.java      |  2 +-
 .../groupby/GroupByWithValueFilterDataSet.java     |  2 +-
 .../groupby/GroupByWithoutValueFilterDataSet.java  |  4 +-
 .../externalsort/SimpleExternalSortEngine.java     |  4 +-
 .../fileRelated/UnSealedTsFileIterateReader.java   |  4 +-
 .../resourceRelated/SeqResourceIterateReader.java  |  2 +-
 .../db/sync/receiver/transfer/SyncServiceImpl.java |  6 +--
 .../sync/sender/transfer/DataTransferManager.java  |  2 +-
 .../strategy/DirectoryStrategyTest.java            | 12 +++---
 .../iotdb/db/metadata/MManagerImproveTest.java     |  2 +-
 .../query/reader/universal/FakedSeriesReader.java  |  4 +-
 22 files changed, 116 insertions(+), 61 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 2cbdc83..59ccc09 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
@@ -24,6 +24,7 @@ import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import org.apache.iotdb.db.conf.directories.DirectoryManager;
 import org.apache.iotdb.db.engine.merge.selector.MergeFileStrategy;
+import org.apache.iotdb.db.exception.LoadConfigurationException;
 import org.apache.iotdb.db.metadata.MManager;
 import org.apache.iotdb.db.service.TSServiceImpl;
 import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
@@ -479,7 +480,7 @@ public class IoTDBConfig {
     }
   }
 
-  void reloadDataDirs(String[] dataDirs) {
+  void reloadDataDirs(String[] dataDirs) throws LoadConfigurationException {
     if (TSFileDescriptor.getInstance().getConfig().getTSFileStorageFs().equals(FSType.HDFS)) {
       String hdfsDir = getHdfsDir();
       for (int i = 0; i < dataDirs.length; i++) {
diff --git a/server/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java b/server/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java
index 25091b3..e24f495 100644
--- a/server/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java
+++ b/server/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java
@@ -26,6 +26,8 @@ import java.io.InputStream;
 import java.time.ZoneId;
 import java.util.Properties;
 import org.apache.iotdb.db.conf.directories.DirectoryManager;
+import org.apache.iotdb.db.exception.LoadConfigurationException;
+import org.apache.iotdb.db.exception.ProcessorException;
 import org.apache.iotdb.db.utils.FilePathUtils;
 import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
 import org.slf4j.Logger;
@@ -407,7 +409,7 @@ public class IoTDBDescriptor {
         .getProperty("compressor", TSFileDescriptor.getInstance().getConfig().getCompressor()));
   }
 
-  public void loadHotModifiedProps() {
+  public void loadHotModifiedProps() throws ProcessorException {
     String url = getPropsUrl();
     if (url == null) {
       return;
@@ -429,7 +431,7 @@ public class IoTDBDescriptor {
       if (multiDirStrategyClassName != null && !multiDirStrategyClassName
           .equals(conf.getMultiDirStrategyClassName())) {
         conf.setMultiDirStrategyClassName(multiDirStrategyClassName);
-        DirectoryManager.getInstance().updateFileFolders();
+        DirectoryManager.getInstance().updateDirectoryStrategy();
       }
 
       // update WAL conf
@@ -460,12 +462,9 @@ public class IoTDBDescriptor {
       // update tsfile-format config
       loadTsFileProps(properties);
 
-    } catch (FileNotFoundException e) {
-      logger.warn("Fail to reload config file {}", url, e);
-    } catch (IOException e) {
-      logger.warn("Cannot reload config file, use default configuration", e);
     } catch (Exception e) {
-      logger.warn("Incorrect format in config file, use default configuration", e);
+      logger.warn("Fail to reload config file {}", url, e);
+      throw new ProcessorException(String.format("Fail to reload config file %s because %s", url, e.getMessage()));
     }
   }
 
diff --git a/server/src/main/java/org/apache/iotdb/db/conf/directories/DirectoryManager.java b/server/src/main/java/org/apache/iotdb/db/conf/directories/DirectoryManager.java
index 83e5016..5d3c37c 100644
--- a/server/src/main/java/org/apache/iotdb/db/conf/directories/DirectoryManager.java
+++ b/server/src/main/java/org/apache/iotdb/db/conf/directories/DirectoryManager.java
@@ -26,6 +26,7 @@ import org.apache.iotdb.db.conf.IoTDBConstant;
 import org.apache.iotdb.db.conf.IoTDBDescriptor;
 import org.apache.iotdb.db.conf.directories.strategy.DirectoryStrategy;
 import org.apache.iotdb.db.exception.DiskSpaceInsufficientException;
+import org.apache.iotdb.db.exception.LoadConfigurationException;
 import org.apache.iotdb.tsfile.fileSystem.FSFactoryProducer;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -64,34 +65,54 @@ public class DirectoryManager {
       strategyName = IoTDBDescriptor.getInstance().getConfig().getMultiDirStrategyClassName();
       Class<?> clazz = Class.forName(strategyName);
       sequenceStrategy = (DirectoryStrategy) clazz.newInstance();
-      sequenceStrategy.init(sequenceFileFolders);
+      sequenceStrategy.setFolders(sequenceFileFolders);
       unsequenceStrategy = (DirectoryStrategy) clazz.newInstance();
-      unsequenceStrategy.init(unsequenceFileFolders);
+      unsequenceStrategy.setFolders(unsequenceFileFolders);
     } catch (DiskSpaceInsufficientException e) {
       logger.error("All disks of folders are full.", e);
     } catch (Exception e) {
-      logger.error("Can't find sequenceStrategy {} for mult-directories.", strategyName, e);
+      logger.error("Can't find strategy {} for mult-directories.", strategyName, e);
     }
   }
 
-  public void updateFileFolders() {
+  public void updateFileFolders() throws LoadConfigurationException {
     try {
-      sequenceFileFolders =
+      List<String> sequenceFileFolders =
           new ArrayList<>(Arrays.asList(IoTDBDescriptor.getInstance().getConfig().getDataDirs()));
       mkDataDirs(sequenceFileFolders);
 
-      unsequenceFileFolders =
+      List<String> unsequenceFileFolders =
           new ArrayList<>(Arrays.asList(IoTDBDescriptor.getInstance().getConfig().getDataDirs()));
       mkDataDirs(unsequenceFileFolders);
-      sequenceStrategy.init(sequenceFileFolders);
-      unsequenceStrategy.init(unsequenceFileFolders);
+      sequenceStrategy.setFolders(sequenceFileFolders);
+      unsequenceStrategy.setFolders(unsequenceFileFolders);
+      this.sequenceFileFolders = sequenceFileFolders;
+      this.unsequenceFileFolders = unsequenceFileFolders;
+      logger.info("Success to update file folders.");
     } catch (DiskSpaceInsufficientException e) {
-      logger.error("All disks of folders are full.", e);
+      logger.error(
+          "Fail to update file folders, use previous folders.", e);
+      throw new LoadConfigurationException(
+          "Fail to update file folders because all disks of folders are full, use previous folders.");
     }
   }
 
-  private void updateDirectoryStrategy(){
-
+  public void updateDirectoryStrategy() throws LoadConfigurationException {
+    String strategyName = "";
+    try {
+      strategyName = IoTDBDescriptor.getInstance().getConfig().getMultiDirStrategyClassName();
+      Class<?> clazz = Class.forName(strategyName);
+      sequenceStrategy = (DirectoryStrategy) clazz.newInstance();
+      sequenceStrategy.setFolders(sequenceFileFolders);
+      unsequenceStrategy = (DirectoryStrategy) clazz.newInstance();
+      unsequenceStrategy.setFolders(unsequenceFileFolders);
+      logger.info("Success to update directory strategy.");
+    } catch (Exception e) {
+      logger.error("Fail to update directory strategy {}, use previous strategy", strategyName, e);
+      throw new LoadConfigurationException(String.format(
+          "Fail to update directory strategy because can't find strategy %s for mult-directories, use previous strategy",
+          strategyName));
+    }
   }
 
   public static DirectoryManager getInstance() {
@@ -127,10 +148,6 @@ public class DirectoryManager {
     return sequenceFileFolders.get(index);
   }
 
-  public int getSequenceFileFolderIndex(String folder) {
-    return sequenceFileFolders.indexOf(folder);
-  }
-
   public List<String> getAllSequenceFileFolders() {
     return new ArrayList<>(sequenceFileFolders);
   }
diff --git a/server/src/main/java/org/apache/iotdb/db/conf/directories/strategy/DirectoryStrategy.java b/server/src/main/java/org/apache/iotdb/db/conf/directories/strategy/DirectoryStrategy.java
index 741d379..4ecff7a 100644
--- a/server/src/main/java/org/apache/iotdb/db/conf/directories/strategy/DirectoryStrategy.java
+++ b/server/src/main/java/org/apache/iotdb/db/conf/directories/strategy/DirectoryStrategy.java
@@ -18,6 +18,7 @@
  */
 package org.apache.iotdb.db.conf.directories.strategy;
 
+import java.util.ArrayList;
 import java.util.List;
 import org.apache.iotdb.db.conf.IoTDBDescriptor;
 import org.apache.iotdb.db.exception.DiskSpaceInsufficientException;
@@ -34,19 +35,17 @@ public abstract class DirectoryStrategy {
   protected static final Logger logger = LoggerFactory.getLogger(DirectoryStrategy.class);
 
   /**
-   * All the folders of data files, should be init once the subclass is created.
+   * All the folders of data files, should be setFolders once the subclass is created.
    */
-  List<String> folders;
+  List<String> folders = new ArrayList<>();
 
   /**
-   * To init folders. Do not recommend to overwrite.
+   * To setFolders folders. Do not recommend to overwrite.
    * This method guarantees that at least one folder has available space.
    *
    * @param folders the folders from conf
    */
-  public void init(List<String> folders) throws DiskSpaceInsufficientException {
-    this.folders = folders;
-
+  public void setFolders(List<String> folders) throws DiskSpaceInsufficientException {
     boolean hasSpace = false;
     for (String folder : folders) {
       if (CommonUtils.hasSpace(folder)) {
@@ -57,8 +56,10 @@ public abstract class DirectoryStrategy {
     if (!hasSpace) {
       IoTDBDescriptor.getInstance().getConfig().setReadOnly(true);
       throw new DiskSpaceInsufficientException(
-          String.format("All disks of folders %s are full, can't init.", folders));
+          String.format("All disks of folders %s are full, can't setFolders.", folders));
     }
+
+    this.folders = folders;
   }
 
   /**
diff --git a/server/src/main/java/org/apache/iotdb/db/conf/directories/strategy/SequenceStrategy.java b/server/src/main/java/org/apache/iotdb/db/conf/directories/strategy/SequenceStrategy.java
index 75a7870..6917f27 100644
--- a/server/src/main/java/org/apache/iotdb/db/conf/directories/strategy/SequenceStrategy.java
+++ b/server/src/main/java/org/apache/iotdb/db/conf/directories/strategy/SequenceStrategy.java
@@ -27,10 +27,10 @@ public class SequenceStrategy extends DirectoryStrategy {
   private int currentIndex;
 
   @Override
-  public void init(List<String> folders) throws DiskSpaceInsufficientException {
-    super.init(folders);
+  public void setFolders(List<String> folders) throws DiskSpaceInsufficientException {
+    super.setFolders(folders);
 
-    // super.init() ensures at least one folder is not full,
+    // super.setFolders() ensures at least one folder is not full,
     // so currentIndex will not be -1 after loop
     currentIndex = -1;
     for (int i = 0; i < folders.size(); i++) {
diff --git a/server/src/main/java/org/apache/iotdb/db/engine/querycontext/ReadOnlyMemChunk.java b/server/src/main/java/org/apache/iotdb/db/engine/querycontext/ReadOnlyMemChunk.java
index 9d467c5..23a54ab 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/querycontext/ReadOnlyMemChunk.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/querycontext/ReadOnlyMemChunk.java
@@ -46,7 +46,7 @@ public class ReadOnlyMemChunk implements TimeValuePairSorter {
   private int floatPrecision = TSFileDescriptor.getInstance().getConfig().getFloatPrecision();
 
   /**
-   * init by TSDataType and TimeValuePairSorter.
+   * setFolders by TSDataType and TimeValuePairSorter.
    */
   public ReadOnlyMemChunk(TSDataType dataType, TimeValuePairSorter memSeries, Map<String, String> props) {
     this.dataType = dataType;
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 f51b78b..ac5397f 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
@@ -358,7 +358,7 @@ public class StorageGroupProcessor {
     }
     writeLock();
     try {
-      // init map
+      // setFolders map
       latestTimeForEachDevice.putIfAbsent(insertPlan.getDeviceId(), Long.MIN_VALUE);
       latestFlushedTimeForEachDevice.putIfAbsent(insertPlan.getDeviceId(), Long.MIN_VALUE);
 
@@ -373,7 +373,7 @@ public class StorageGroupProcessor {
   public Integer[] insertBatch(BatchInsertPlan batchInsertPlan) throws QueryProcessorException {
     writeLock();
     try {
-      // init map
+      // setFolders map
       latestTimeForEachDevice.putIfAbsent(batchInsertPlan.getDeviceId(), Long.MIN_VALUE);
       latestFlushedTimeForEachDevice.putIfAbsent(batchInsertPlan.getDeviceId(), Long.MIN_VALUE);
 
diff --git a/server/src/main/java/org/apache/iotdb/db/exception/LoadConfigurationException.java b/server/src/main/java/org/apache/iotdb/db/exception/LoadConfigurationException.java
new file mode 100644
index 0000000..da52227
--- /dev/null
+++ b/server/src/main/java/org/apache/iotdb/db/exception/LoadConfigurationException.java
@@ -0,0 +1,37 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.iotdb.db.exception;
+
+public class LoadConfigurationException extends Exception {
+
+  private static final long serialVersionUID = -1950532739374479184L;
+
+  public LoadConfigurationException(String message) {
+    super(message);
+  }
+
+  public LoadConfigurationException(String message, Throwable cause) {
+    super(message, cause);
+  }
+
+  public LoadConfigurationException(Throwable cause) {
+    super(cause);
+  }
+
+}
diff --git a/server/src/main/java/org/apache/iotdb/db/metadata/MManager.java b/server/src/main/java/org/apache/iotdb/db/metadata/MManager.java
index e72c589..90dd6e7 100644
--- a/server/src/main/java/org/apache/iotdb/db/metadata/MManager.java
+++ b/server/src/main/java/org/apache/iotdb/db/metadata/MManager.java
@@ -165,7 +165,7 @@ public class MManager {
 
   private void initFromLog(File logFile)
       throws IOException, PathErrorException, MetadataErrorException {
-    // init the metadata from the operation log
+    // setFolders the metadata from the operation log
     mgraph = new MGraph(ROOT_NAME);
     if (logFile.exists()) {
       try (FileReader fr = new FileReader(logFile);
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SFWOperator.java b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SFWOperator.java
index e675bfd..9cfe3b3 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SFWOperator.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SFWOperator.java
@@ -51,7 +51,7 @@ public abstract class SFWOperator extends RootOperator {
   }
 
   /**
-   * set selectOperator, then init hasAggregation according to selectOperator.
+   * set selectOperator, then setFolders hasAggregation according to selectOperator.
    */
   public void setSelectOperator(SelectOperator sel) {
     this.selectOperator = sel;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SelectOperator.java b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SelectOperator.java
index 902dc38..1824531 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SelectOperator.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SelectOperator.java
@@ -32,7 +32,7 @@ public final class SelectOperator extends Operator {
   private List<String> aggregations;
 
   /**
-   * init with tokenIntType, default operatorType is <code>OperatorType.SELECT</code>.
+   * setFolders with tokenIntType, default operatorType is <code>OperatorType.SELECT</code>.
    */
   public SelectOperator(int tokenIntType) {
     super(tokenIntType);
diff --git a/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/GroupByEngineDataSet.java b/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/GroupByEngineDataSet.java
index 0e2413d..64069f0 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/GroupByEngineDataSet.java
+++ b/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/GroupByEngineDataSet.java
@@ -61,7 +61,7 @@ public abstract class GroupByEngineDataSet extends QueryDataSet {
     this.mergedIntervals = mergedIntervals;
     this.functions = new ArrayList<>();
 
-    // init group by time partition
+    // setFolders group by time partition
     this.usedIndex = 0;
     this.hasCachedTimeInterval = false;
     this.endTime = -1;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/GroupByWithValueFilterDataSet.java b/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/GroupByWithValueFilterDataSet.java
index 09e264e..876bba0 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/GroupByWithValueFilterDataSet.java
+++ b/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/GroupByWithValueFilterDataSet.java
@@ -67,7 +67,7 @@ public class GroupByWithValueFilterDataSet extends GroupByEngineDataSet {
   }
 
   /**
-   * init reader and aggregate function.
+   * setFolders reader and aggregate function.
    */
   public void initGroupBy(QueryContext context, List<String> aggres, IExpression expression)
       throws StorageEngineException, PathErrorException, ProcessorException, IOException {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/GroupByWithoutValueFilterDataSet.java b/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/GroupByWithoutValueFilterDataSet.java
index cf8554b..6434123 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/GroupByWithoutValueFilterDataSet.java
+++ b/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/GroupByWithoutValueFilterDataSet.java
@@ -70,12 +70,12 @@ public class GroupByWithoutValueFilterDataSet extends GroupByEngineDataSet {
   }
 
   /**
-   * init reader and aggregate function.
+   * setFolders reader and aggregate function.
    */
   public void initGroupBy(QueryContext context, List<String> aggres, IExpression expression)
       throws StorageEngineException, PathErrorException, ProcessorException, IOException {
     initAggreFuction(aggres);
-    // init reader
+    // setFolders reader
     if (expression != null) {
       timeFilter = ((GlobalTimeExpression) expression).getFilter();
     }
diff --git a/server/src/main/java/org/apache/iotdb/db/query/externalsort/SimpleExternalSortEngine.java b/server/src/main/java/org/apache/iotdb/db/query/externalsort/SimpleExternalSortEngine.java
index 00bafc4..84b9d43 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/externalsort/SimpleExternalSortEngine.java
+++ b/server/src/main/java/org/apache/iotdb/db/query/externalsort/SimpleExternalSortEngine.java
@@ -132,7 +132,7 @@
    }
 
    /**
-    * init IPointReader with ChunkReaderWrap.
+    * setFolders IPointReader with ChunkReaderWrap.
     */
    private List<IPointReader> generateIPointReader(List<ChunkReaderWrap> readerWraps,
        final int start, final int size) throws IOException {
@@ -144,7 +144,7 @@
    }
 
    /**
-    * init IReaderByTimestamp with ChunkReaderWrap.
+    * setFolders IReaderByTimestamp with ChunkReaderWrap.
     */
    private List<IReaderByTimestamp> generateIReaderByTimestamp(List<ChunkReaderWrap> readerWraps,
        final int start, final int size) throws IOException {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/reader/fileRelated/UnSealedTsFileIterateReader.java b/server/src/main/java/org/apache/iotdb/db/query/reader/fileRelated/UnSealedTsFileIterateReader.java
index b35b1bd..143d599 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/reader/fileRelated/UnSealedTsFileIterateReader.java
+++ b/server/src/main/java/org/apache/iotdb/db/query/reader/fileRelated/UnSealedTsFileIterateReader.java
@@ -109,7 +109,7 @@ public class UnSealedTsFileIterateReader extends IterateReader {
     List<ChunkMetaData> metaDataList = unSealedTsFile.getChunkMetaDataList();
 
     if (metaDataList == null || metaDataList.isEmpty()) {
-      // init fileSeriesReader
+      // setFolders fileSeriesReader
       // no need to construct a IChunkLoader since it will never be used in this case
       if (filter == null) {
         fileSeriesReader = new FileSeriesReaderWithoutFilter(null, metaDataList);
@@ -126,7 +126,7 @@ public class UnSealedTsFileIterateReader extends IterateReader {
       TsFileSequenceReader unClosedTsFileReader = FileReaderManager.getInstance()
           .get(unSealedTsFile, false);
       IChunkLoader chunkLoader = new ChunkLoaderImpl(unClosedTsFileReader);
-      // init fileSeriesReader
+      // setFolders fileSeriesReader
       if (filter == null) {
         fileSeriesReader = new FileSeriesReaderWithoutFilter(chunkLoader, metaDataList);
       } else {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/reader/resourceRelated/SeqResourceIterateReader.java b/server/src/main/java/org/apache/iotdb/db/query/reader/resourceRelated/SeqResourceIterateReader.java
index 1dc9099..8ea2567 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/reader/resourceRelated/SeqResourceIterateReader.java
+++ b/server/src/main/java/org/apache/iotdb/db/query/reader/resourceRelated/SeqResourceIterateReader.java
@@ -174,7 +174,7 @@ public class SeqResourceIterateReader extends IterateReader {
         .get(sealedTsFile, true);
     IChunkLoader chunkLoader = new ChunkLoaderImpl(tsFileReader);
 
-    // init fileSeriesReader
+    // setFolders fileSeriesReader
     FileSeriesReader fileSeriesReader;
     if (filter == null) {
       fileSeriesReader = new FileSeriesReaderWithoutFilter(chunkLoader, metaDataList);
diff --git a/server/src/main/java/org/apache/iotdb/db/sync/receiver/transfer/SyncServiceImpl.java b/server/src/main/java/org/apache/iotdb/db/sync/receiver/transfer/SyncServiceImpl.java
index 9401c1a..fe8d46a 100644
--- a/server/src/main/java/org/apache/iotdb/db/sync/receiver/transfer/SyncServiceImpl.java
+++ b/server/src/main/java/org/apache/iotdb/db/sync/receiver/transfer/SyncServiceImpl.java
@@ -143,7 +143,7 @@ public class SyncServiceImpl implements SyncService.Iface {
     try {
       syncLog.get().startSyncDeletedFilesName();
     } catch (IOException e) {
-      logger.error("Can not init sync process", e);
+      logger.error("Can not setFolders sync process", e);
       return getErrorResult(e.getMessage());
     }
     return getSuccessResult();
@@ -185,9 +185,9 @@ public class SyncServiceImpl implements SyncService.Iface {
       syncLog.get().startSyncTsFiles();
       messageDigest.set(MessageDigest.getInstance(SyncConstant.MESSAGE_DIGIT_NAME));
     } catch (IOException | NoSuchAlgorithmException e) {
-      logger.error("Can not init sync resource for file {}", filename, e);
+      logger.error("Can not setFolders sync resource for file {}", filename, e);
       return getErrorResult(
-          String.format("Can not init sync resource for file %s because %s", filename,
+          String.format("Can not setFolders sync resource for file %s because %s", filename,
               e.getMessage()));
     }
     return getSuccessResult();
diff --git a/server/src/main/java/org/apache/iotdb/db/sync/sender/transfer/DataTransferManager.java b/server/src/main/java/org/apache/iotdb/db/sync/sender/transfer/DataTransferManager.java
index 2354305..39153ba 100644
--- a/server/src/main/java/org/apache/iotdb/db/sync/sender/transfer/DataTransferManager.java
+++ b/server/src/main/java/org/apache/iotdb/db/sync/sender/transfer/DataTransferManager.java
@@ -450,7 +450,7 @@ public class DataTransferManager implements IDataTransferManager {
         try {
           ResultStatus status = serviceClient.init(sgName);
           if (!status.success) {
-            throw new SyncConnectionException("Unable init receiver because " + status.msg);
+            throw new SyncConnectionException("Unable setFolders receiver because " + status.msg);
           }
         } catch (TException | SyncConnectionException e) {
           throw new SyncConnectionException("Unable to connect to receiver", e);
diff --git a/server/src/test/java/org/apache/iotdb/db/conf/directories/strategy/DirectoryStrategyTest.java b/server/src/test/java/org/apache/iotdb/db/conf/directories/strategy/DirectoryStrategyTest.java
index 4158f79..7d92328 100644
--- a/server/src/test/java/org/apache/iotdb/db/conf/directories/strategy/DirectoryStrategyTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/conf/directories/strategy/DirectoryStrategyTest.java
@@ -73,7 +73,7 @@ public class DirectoryStrategyTest {
   @Test
   public void testSequenceStrategy() throws DiskSpaceInsufficientException {
     SequenceStrategy sequenceStrategy = new SequenceStrategy();
-    sequenceStrategy.init(dataDirList);
+    sequenceStrategy.setFolders(dataDirList);
 
     // loop two times of data dir size to fully loop
     int index = 0;
@@ -89,7 +89,7 @@ public class DirectoryStrategyTest {
   @Test
   public void testMaxDiskUsableSpaceFirstStrategy() throws DiskSpaceInsufficientException {
     MaxDiskUsableSpaceFirstStrategy maxDiskUsableSpaceFirstStrategy = new MaxDiskUsableSpaceFirstStrategy();
-    maxDiskUsableSpaceFirstStrategy.init(dataDirList);
+    maxDiskUsableSpaceFirstStrategy.setFolders(dataDirList);
 
     int maxIndex = getIndexOfMaxSpace();
     for (int i = 0; i < dataDirList.size(); i++) {
@@ -120,7 +120,7 @@ public class DirectoryStrategyTest {
   public void testMinFolderOccupiedSpaceFirstStrategy()
       throws DiskSpaceInsufficientException, IOException {
     MinFolderOccupiedSpaceFirstStrategy minFolderOccupiedSpaceFirstStrategy = new MinFolderOccupiedSpaceFirstStrategy();
-    minFolderOccupiedSpaceFirstStrategy.init(dataDirList);
+    minFolderOccupiedSpaceFirstStrategy.setFolders(dataDirList);
 
     int minIndex = getIndexOfMinOccupiedSpace();
     for (int i = 0; i < dataDirList.size(); i++) {
@@ -155,21 +155,21 @@ public class DirectoryStrategyTest {
 
     SequenceStrategy sequenceStrategy = new SequenceStrategy();
     try {
-      sequenceStrategy.init(dataDirList);
+      sequenceStrategy.setFolders(dataDirList);
       fail();
     } catch (DiskSpaceInsufficientException e) {
     }
 
     MaxDiskUsableSpaceFirstStrategy maxDiskUsableSpaceFirstStrategy = new MaxDiskUsableSpaceFirstStrategy();
     try {
-      maxDiskUsableSpaceFirstStrategy.init(dataDirList);
+      maxDiskUsableSpaceFirstStrategy.setFolders(dataDirList);
       fail();
     } catch (DiskSpaceInsufficientException e) {
     }
 
     MinFolderOccupiedSpaceFirstStrategy minFolderOccupiedSpaceFirstStrategy = new MinFolderOccupiedSpaceFirstStrategy();
     try {
-      minFolderOccupiedSpaceFirstStrategy.init(dataDirList);
+      minFolderOccupiedSpaceFirstStrategy.setFolders(dataDirList);
       fail();
     } catch (DiskSpaceInsufficientException e) {
     }
diff --git a/server/src/test/java/org/apache/iotdb/db/metadata/MManagerImproveTest.java b/server/src/test/java/org/apache/iotdb/db/metadata/MManagerImproveTest.java
index 9e4eead..370846a 100644
--- a/server/src/test/java/org/apache/iotdb/db/metadata/MManagerImproveTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/metadata/MManagerImproveTest.java
@@ -127,7 +127,7 @@ public class MManagerImproveTest {
 
     logger.debug("string combine:\t" + string_combine);
     logger.debug("seriesPath exist:\t" + path_exist);
-    logger.debug("list init:\t" + list_init);
+    logger.debug("list setFolders:\t" + list_init);
     logger.debug("check file level:\t" + check_filelevel);
     logger.debug("get series type:\t" + get_seriestype);
   }
diff --git a/server/src/test/java/org/apache/iotdb/db/query/reader/universal/FakedSeriesReader.java b/server/src/test/java/org/apache/iotdb/db/query/reader/universal/FakedSeriesReader.java
index e8f8bfd..7603572 100644
--- a/server/src/test/java/org/apache/iotdb/db/query/reader/universal/FakedSeriesReader.java
+++ b/server/src/test/java/org/apache/iotdb/db/query/reader/universal/FakedSeriesReader.java
@@ -31,12 +31,12 @@ public class FakedSeriesReader implements IPointReader {
   private boolean initWithTimeList;
   private final static TSDataType DATA_TYPE = TSDataType.INT64;
 
-  // init with time list and value
+  // setFolders with time list and value
   private long[] timestamps;
   private long value;
 
 
-  // init with startTime, size, interval and modValue
+  // setFolders with startTime, size, interval and modValue
   private long startTime;
   private int interval;
   private int modValue;