From d74adcc5c6723619a4d25586fc23c0641bae5c4d Mon Sep 17 00:00:00 2001 From: qiaojialin <646274302@qq.com> Date: Wed, 17 Jun 2020 09:30:57 +0800 Subject: [PATCH 1/2] add tag size in config check --- .../iotdb/db/conf/IoTDBConfigCheck.java | 30 ++++++++++++++----- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfigCheck.java b/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfigCheck.java index 37a8f6a878f26..4e52099aa5d26 100644 --- a/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfigCheck.java +++ b/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfigCheck.java @@ -69,8 +69,13 @@ public class IoTDBConfigCheck { private static final String ENABLE_PARTITION_STRING = "enable_partition"; private static boolean enablePartition = IoTDBDescriptor.getInstance().getConfig().isEnablePartition(); + private static final String TAG_ATTRIBUTE_SIZE_STRING = "tag_attribute_total_size"; + private static final String tagAttributeTotalSize = String.valueOf(IoTDBDescriptor.getInstance().getConfig().getTagAttributeTotalSize()); + private static final String IOTDB_VERSION_STRING = "iotdb_version"; + private static final String ERROR_LOG = "Wrong %s, please set as: %s !"; + public static IoTDBConfigCheck getInstance() { return IoTDBConfigCheckHolder.INSTANCE; @@ -112,11 +117,12 @@ private IoTDBConfigCheck() { System.exit(-1); } + systemProperties.put(IOTDB_VERSION_STRING, IoTDBConstant.VERSION); systemProperties.put(TIMESTAMP_PRECISION_STRING, timestampPrecision); systemProperties.put(PARTITION_INTERVAL_STRING, String.valueOf(partitionInterval)); systemProperties.put(TSFILE_FILE_SYSTEM_STRING, tsfileFileSystem); systemProperties.put(ENABLE_PARTITION_STRING, String.valueOf(enablePartition)); - systemProperties.put(IOTDB_VERSION_STRING, IoTDBConstant.VERSION); + systemProperties.put(TAG_ATTRIBUTE_SIZE_STRING, tagAttributeTotalSize); } @@ -195,6 +201,7 @@ private void upgradePropertiesFile() properties.setProperty(TSFILE_FILE_SYSTEM_STRING, tsfileFileSystem); properties.setProperty(IOTDB_VERSION_STRING, IoTDBConstant.VERSION); properties.setProperty(ENABLE_PARTITION_STRING, String.valueOf(enablePartition)); + properties.setProperty(TAG_ATTRIBUTE_SIZE_STRING, tagAttributeTotalSize); properties.store(tmpFOS, SYSTEM_PROPERTIES_STRING); // upgrade finished, delete old system.properties file @@ -237,6 +244,9 @@ private void upgradePropertiesFileFromBrokenFile() } } + /** + * Check all immutable properties + */ private void checkProperties() throws IOException { for (Entry entry : systemProperties.entrySet()) { if (!properties.containsKey(entry.getKey())) { @@ -246,20 +256,26 @@ private void checkProperties() throws IOException { } if (!properties.getProperty(TIMESTAMP_PRECISION_STRING).equals(timestampPrecision)) { - logger.error("Wrong {}, please set as: {} !", TIMESTAMP_PRECISION_STRING, properties - .getProperty(TIMESTAMP_PRECISION_STRING)); + logger.error(String.format(ERROR_LOG, TIMESTAMP_PRECISION_STRING, properties + .getProperty(TIMESTAMP_PRECISION_STRING))); System.exit(-1); } if (Long.parseLong(properties.getProperty(PARTITION_INTERVAL_STRING)) != partitionInterval) { - logger.error("Wrong {}, please set as: {} !", PARTITION_INTERVAL_STRING, properties - .getProperty(PARTITION_INTERVAL_STRING)); + logger.error(String.format(ERROR_LOG, PARTITION_INTERVAL_STRING, properties + .getProperty(PARTITION_INTERVAL_STRING))); System.exit(-1); } if (!(properties.getProperty(TSFILE_FILE_SYSTEM_STRING).equals(tsfileFileSystem))) { - logger.error("Wrong {}, please set as: {} !", TSFILE_FILE_SYSTEM_STRING, properties - .getProperty(TSFILE_FILE_SYSTEM_STRING)); + logger.error(String.format(ERROR_LOG, TSFILE_FILE_SYSTEM_STRING, properties + .getProperty(TSFILE_FILE_SYSTEM_STRING))); + System.exit(-1); + } + + if (!(properties.getProperty(TAG_ATTRIBUTE_SIZE_STRING).equals(tagAttributeTotalSize))) { + logger.error(String.format(ERROR_LOG, TAG_ATTRIBUTE_SIZE_STRING, properties + .getProperty(TAG_ATTRIBUTE_SIZE_STRING))); System.exit(-1); } } From fba4487a25ffce10bbfb37f22b2f8edb4fe8b7ca Mon Sep 17 00:00:00 2001 From: qiaojialin <646274302@qq.com> Date: Wed, 17 Jun 2020 09:42:14 +0800 Subject: [PATCH 2/2] add tag size in config check --- .../org/apache/iotdb/db/conf/IoTDBConfigCheck.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfigCheck.java b/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfigCheck.java index 4e52099aa5d26..807c5e25d5fa9 100644 --- a/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfigCheck.java +++ b/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfigCheck.java @@ -28,6 +28,7 @@ import org.apache.iotdb.db.metadata.MLogWriter; import org.apache.iotdb.db.metadata.MetadataConstant; import org.apache.iotdb.tsfile.common.conf.TSFileConfig; +import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor; import org.apache.iotdb.tsfile.common.constant.TsFileConstant; import org.apache.iotdb.tsfile.fileSystem.FSFactoryProducer; import org.slf4j.Logger; @@ -72,6 +73,9 @@ public class IoTDBConfigCheck { private static final String TAG_ATTRIBUTE_SIZE_STRING = "tag_attribute_total_size"; private static final String tagAttributeTotalSize = String.valueOf(IoTDBDescriptor.getInstance().getConfig().getTagAttributeTotalSize()); + private static final String MAX_DEGREE_OF_INDEX_STRING = "max_degree_of_index_node"; + private static final String maxDegreeOfIndexNode = String.valueOf(TSFileDescriptor.getInstance().getConfig().getMaxDegreeOfIndexNode()); + private static final String IOTDB_VERSION_STRING = "iotdb_version"; private static final String ERROR_LOG = "Wrong %s, please set as: %s !"; @@ -123,6 +127,7 @@ private IoTDBConfigCheck() { systemProperties.put(TSFILE_FILE_SYSTEM_STRING, tsfileFileSystem); systemProperties.put(ENABLE_PARTITION_STRING, String.valueOf(enablePartition)); systemProperties.put(TAG_ATTRIBUTE_SIZE_STRING, tagAttributeTotalSize); + systemProperties.put(MAX_DEGREE_OF_INDEX_STRING, maxDegreeOfIndexNode); } @@ -202,6 +207,7 @@ private void upgradePropertiesFile() properties.setProperty(IOTDB_VERSION_STRING, IoTDBConstant.VERSION); properties.setProperty(ENABLE_PARTITION_STRING, String.valueOf(enablePartition)); properties.setProperty(TAG_ATTRIBUTE_SIZE_STRING, tagAttributeTotalSize); + properties.setProperty(MAX_DEGREE_OF_INDEX_STRING, maxDegreeOfIndexNode); properties.store(tmpFOS, SYSTEM_PROPERTIES_STRING); // upgrade finished, delete old system.properties file @@ -278,6 +284,12 @@ private void checkProperties() throws IOException { .getProperty(TAG_ATTRIBUTE_SIZE_STRING))); System.exit(-1); } + + if (!(properties.getProperty(MAX_DEGREE_OF_INDEX_STRING).equals(maxDegreeOfIndexNode))) { + logger.error(String.format(ERROR_LOG, MAX_DEGREE_OF_INDEX_STRING, properties + .getProperty(MAX_DEGREE_OF_INDEX_STRING))); + System.exit(-1); + } } /**