You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by er...@apache.org on 2022/10/13 12:46:54 UTC
[iotdb] 01/01: Fix cycle initializing IoTDBDescriptor
This is an automated email from the ASF dual-hosted git repository.
ericpai pushed a commit to branch bugfix/cycle-init
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 1a2da478e392a19d46154cec2eab8b25033cc186
Author: Eric Pai <er...@hotmail.com>
AuthorDate: Thu Oct 13 20:46:25 2022 +0800
Fix cycle initializing IoTDBDescriptor
---
server/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java | 6 ++++--
.../java/org/apache/iotdb/db/engine/storagegroup/DataRegion.java | 4 +++-
.../src/main/java/org/apache/iotdb/db/qp/utils/DateTimeUtils.java | 3 +--
3 files changed, 8 insertions(+), 5 deletions(-)
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 4509cb44a3..ad7b332314 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
@@ -1005,7 +1005,8 @@ public class IoTDBDescriptor {
loadAuthorCache(properties);
conf.setTimePartitionIntervalForStorage(
- DateTimeUtils.convertMilliTimeWithPrecision(conf.getTimePartitionIntervalForStorage()));
+ DateTimeUtils.convertMilliTimeWithPrecision(
+ conf.getTimePartitionIntervalForStorage(), conf.getTimestampPrecision()));
}
private void loadAuthorCache(Properties properties) {
@@ -1918,7 +1919,8 @@ public class IoTDBDescriptor {
conf.setSeriesPartitionExecutorClass(globalConfig.getSeriesPartitionExecutorClass());
conf.setSeriesPartitionSlotNum(globalConfig.getSeriesPartitionSlotNum());
conf.setTimePartitionIntervalForRouting(
- DateTimeUtils.convertMilliTimeWithPrecision(globalConfig.timePartitionInterval));
+ DateTimeUtils.convertMilliTimeWithPrecision(
+ globalConfig.timePartitionInterval, conf.getTimestampPrecision()));
conf.setReadConsistencyLevel(globalConfig.getReadConsistencyLevel());
}
diff --git a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/DataRegion.java b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/DataRegion.java
index c213341708..bea53583f4 100755
--- a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/DataRegion.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/DataRegion.java
@@ -3298,7 +3298,9 @@ public class DataRegion {
public void setDataTTLWithTimePrecisionCheck(long dataTTL) {
if (dataTTL != Long.MAX_VALUE) {
- dataTTL = DateTimeUtils.convertMilliTimeWithPrecision(dataTTL);
+ dataTTL =
+ DateTimeUtils.convertMilliTimeWithPrecision(
+ dataTTL, IoTDBDescriptor.getInstance().getConfig().getTimestampPrecision());
}
this.dataTTL = dataTTL;
}
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/utils/DateTimeUtils.java b/server/src/main/java/org/apache/iotdb/db/qp/utils/DateTimeUtils.java
index 4c3b30b277..04cfad9ccb 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/utils/DateTimeUtils.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/utils/DateTimeUtils.java
@@ -686,9 +686,8 @@ public class DateTimeUtils {
return ZonedDateTime.ofInstant(Instant.ofEpochMilli(millisecond), ZoneId.systemDefault());
}
- public static long convertMilliTimeWithPrecision(long milliTime) {
+ public static long convertMilliTimeWithPrecision(long milliTime, String timePrecision) {
long result = milliTime;
- String timePrecision = IoTDBDescriptor.getInstance().getConfig().getTimestampPrecision();
switch (timePrecision) {
case "ns":
result = milliTime * 1000_000L;