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

leirui pushed a commit to branch research/M4-visualization
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/research/M4-visualization by 
this push:
     new ceec787389 add useMad
ceec787389 is described below

commit ceec787389ee830fe6781d55a74cb53bd45a933a
Author: Lei Rui <[email protected]>
AuthorDate: Thu Apr 13 09:30:55 2023 +0800

    add useMad
---
 server/src/assembly/resources/conf/iotdb-engine.properties     |  2 ++
 .../main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java    |  7 +++++++
 .../test/java/org/apache/iotdb/db/integration/m4/MyTest1.java  |  6 ++++++
 .../java/org/apache/iotdb/tsfile/common/conf/TSFileConfig.java | 10 ++++++++++
 .../org/apache/iotdb/tsfile/common/conf/TSFileDescriptor.java  |  3 +++
 .../iotdb/tsfile/file/metadata/statistics/StepRegress.java     |  4 +++-
 6 files changed, 31 insertions(+), 1 deletion(-)

diff --git a/server/src/assembly/resources/conf/iotdb-engine.properties 
b/server/src/assembly/resources/conf/iotdb-engine.properties
index 78c74ae658..31cfbba9fb 100644
--- a/server/src/assembly/resources/conf/iotdb-engine.properties
+++ b/server/src/assembly/resources/conf/iotdb-engine.properties
@@ -608,6 +608,8 @@ enable_unseq_compaction=false
 
 use_ChunkIndex=true
 
+use_Mad=false
+
 # group_size_in_byte=134217728
 
 # The memory size for each series writer to pack page, default value is 64KB
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 5b30980b89..ba2b9667c7 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
@@ -904,6 +904,13 @@ public class IoTDBDescriptor {
                     "use_ChunkIndex",
                     Boolean.toString(
                         
TSFileDescriptor.getInstance().getConfig().isUseChunkIndex()))));
+    TSFileDescriptor.getInstance()
+        .getConfig()
+        .setUseMad(
+            Boolean.parseBoolean(
+                properties.getProperty(
+                    "use_Mad",
+                    
Boolean.toString(TSFileDescriptor.getInstance().getConfig().isUseMad()))));
     TSFileDescriptor.getInstance()
         .getConfig()
         .setGroupSizeInByte(
diff --git 
a/server/src/test/java/org/apache/iotdb/db/integration/m4/MyTest1.java 
b/server/src/test/java/org/apache/iotdb/db/integration/m4/MyTest1.java
index 60169de2c3..c2ab7f3868 100644
--- a/server/src/test/java/org/apache/iotdb/db/integration/m4/MyTest1.java
+++ b/server/src/test/java/org/apache/iotdb/db/integration/m4/MyTest1.java
@@ -58,6 +58,8 @@ public class MyTest1 {
   private static final IoTDBConfig config = 
IoTDBDescriptor.getInstance().getConfig();
   private static boolean originalEnableCPV;
   private static boolean originalUseChunkIndex;
+
+  private static boolean originalUseMad;
   private static CompactionStrategy originalCompactionStrategy;
 
   @Before
@@ -72,6 +74,9 @@ public class MyTest1 {
     originalUseChunkIndex = 
TSFileDescriptor.getInstance().getConfig().isUseChunkIndex();
     TSFileDescriptor.getInstance().getConfig().setUseChunkIndex(false);
 
+    originalUseMad = TSFileDescriptor.getInstance().getConfig().isUseMad();
+    TSFileDescriptor.getInstance().getConfig().setUseMad(true);
+
     EnvironmentUtils.envSetUp();
     Class.forName(Config.JDBC_DRIVER_NAME);
     config.setTimestampPrecision("ms");
@@ -83,6 +88,7 @@ public class MyTest1 {
     config.setCompactionStrategy(originalCompactionStrategy);
     config.setEnableCPV(originalEnableCPV);
     
TSFileDescriptor.getInstance().getConfig().setUseChunkIndex(originalUseChunkIndex);
+    TSFileDescriptor.getInstance().getConfig().setUseMad(originalUseMad);
   }
 
   @Test
diff --git 
a/tsfile/src/main/java/org/apache/iotdb/tsfile/common/conf/TSFileConfig.java 
b/tsfile/src/main/java/org/apache/iotdb/tsfile/common/conf/TSFileConfig.java
index 49b385a658..2186a92162 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/common/conf/TSFileConfig.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/common/conf/TSFileConfig.java
@@ -29,6 +29,8 @@ public class TSFileConfig implements Serializable {
 
   private boolean useChunkIndex = true;
 
+  private boolean useMad = false;
+
   /** encoding configuration */
   public static final int RLE_MIN_REPEATED_NUM = 8;
 
@@ -157,6 +159,14 @@ public class TSFileConfig implements Serializable {
     this.useChunkIndex = useChunkIndex;
   }
 
+  public boolean isUseMad() {
+    return useMad;
+  }
+
+  public void setUseMad(boolean useMad) {
+    this.useMad = useMad;
+  }
+
   public int getGroupSizeInByte() {
     return groupSizeInByte;
   }
diff --git 
a/tsfile/src/main/java/org/apache/iotdb/tsfile/common/conf/TSFileDescriptor.java
 
b/tsfile/src/main/java/org/apache/iotdb/tsfile/common/conf/TSFileDescriptor.java
index 342be83a06..403b40b606 100644
--- 
a/tsfile/src/main/java/org/apache/iotdb/tsfile/common/conf/TSFileDescriptor.java
+++ 
b/tsfile/src/main/java/org/apache/iotdb/tsfile/common/conf/TSFileDescriptor.java
@@ -108,6 +108,9 @@ public class TSFileDescriptor {
       conf.setUseChunkIndex(
           Boolean.parseBoolean(
               properties.getProperty("use_ChunkIndex", 
Boolean.toString(conf.isUseChunkIndex()))));
+      conf.setUseMad(
+          Boolean.parseBoolean(
+              properties.getProperty("use_Mad", 
Boolean.toString(conf.isUseMad()))));
       conf.setGroupSizeInByte(
           Integer.parseInt(
               properties.getProperty(
diff --git 
a/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/statistics/StepRegress.java
 
b/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/statistics/StepRegress.java
index 21443bfcc2..3e14571d3d 100644
--- 
a/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/statistics/StepRegress.java
+++ 
b/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/statistics/StepRegress.java
@@ -18,6 +18,8 @@
  */
 package org.apache.iotdb.tsfile.file.metadata.statistics;
 
+import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
+
 import org.eclipse.collections.impl.list.mutable.primitive.DoubleArrayList;
 import org.eclipse.collections.impl.list.mutable.primitive.IntArrayList;
 import org.eclipse.collections.impl.list.mutable.primitive.LongArrayList;
@@ -27,7 +29,7 @@ import java.util.Arrays;
 
 public class StepRegress {
 
-  public static boolean useMad = false;
+  public static boolean useMad = 
TSFileDescriptor.getInstance().getConfig().isUseMad();
 
   // this is necessary, otherwise serialized twice by timeseriesMetadata and 
chunkMetadata
   // causing learn() executed more than once!!

Reply via email to