void reloadDataDirs(String[][] newTierDataDirs) throws LoadConfigurationException {
    // format data directories
    formulateDataDirs(newTierDataDirs);
    if (newTierDataDirs.length < this.tierDataDirs.length) {
      String msg = "some data dirs are removed from data_dirs parameter, please add them back.";
      logger.error(msg);
      throw new LoadConfigurationException(msg);
    }
    // make sure old data directories not removed
    for (int i = 0; i < this.tierDataDirs.length; ++i) {
      List<String> newDirs = Arrays.asList(newTierDataDirs[i]);
      for (String oldDir : this.tierDataDirs[i]) {
        if (newDirs.stream()
            .noneMatch(
                newDir ->
                    Objects.equals(
                        new File(newDir).getAbsolutePath(), new File(oldDir).getAbsolutePath()))) {
          String msg =
              String.format("%s is removed from data_dirs parameter, please add it back.", oldDir);
          logger.error(msg);
          throw new LoadConfigurationException(msg);
        }
      }
    }
    this.tierDataDirs = newTierDataDirs;
    reloadSystemMetrics();
  }
if the folders are relative paths, add IOTDB_DATA_HOME as the path prefix
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java