You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by xu...@apache.org on 2022/01/17 10:11:43 UTC

[iotdb] branch remove_stat_xkf updated: fix bug

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

xuekaifeng pushed a commit to branch remove_stat_xkf
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/remove_stat_xkf by this push:
     new 1a2e982  fix bug
1a2e982 is described below

commit 1a2e982af98fa4a5e6c00193813c3f214a8b873c
Author: 151250176 <15...@smail.nju.edu.cn>
AuthorDate: Mon Jan 17 17:58:47 2022 +0800

    fix bug
---
 .../main/java/org/apache/iotdb/SessionExample.java | 63 ++++++++--------------
 .../apache/iotdb/db/tools/TsFileSelfCheckTool.java |  2 +-
 .../apache/iotdb/db/tools/TsFileSketchTool.java    | 23 ++++----
 3 files changed, 33 insertions(+), 55 deletions(-)

diff --git a/example/session/src/main/java/org/apache/iotdb/SessionExample.java b/example/session/src/main/java/org/apache/iotdb/SessionExample.java
index ddb52a3..9a826b7 100644
--- a/example/session/src/main/java/org/apache/iotdb/SessionExample.java
+++ b/example/session/src/main/java/org/apache/iotdb/SessionExample.java
@@ -19,6 +19,12 @@
 
 package org.apache.iotdb;
 
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Random;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.rpc.TSStatusCode;
@@ -34,13 +40,6 @@ import org.apache.iotdb.tsfile.utils.BitMap;
 import org.apache.iotdb.tsfile.write.record.Tablet;
 import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Random;
-
 @SuppressWarnings("squid:S106")
 public class SessionExample {
 
@@ -72,9 +71,9 @@ public class SessionExample {
     }
 
     // createTemplate();
-    createTimeseries();
-    createMultiTimeseries();
-    insertRecord();
+    // createTimeseries();
+    // createMultiTimeseries();
+    // insertRecord();
     insertTablet();
     //    insertTabletWithNullValues();
     //    insertTablets();
@@ -91,16 +90,16 @@ public class SessionExample {
     //    deleteTimeseries();
     //    setTimeout();
 
-    sessionEnableRedirect = new Session(LOCAL_HOST, 6667, "root", "root");
-    sessionEnableRedirect.setEnableQueryRedirection(true);
-    sessionEnableRedirect.open(false);
+    //    sessionEnableRedirect = new Session(LOCAL_HOST, 6667, "root", "root");
+    //    sessionEnableRedirect.setEnableQueryRedirection(true);
+    //    sessionEnableRedirect.open(false);
 
     // set session fetchSize
-    sessionEnableRedirect.setFetchSize(10000);
+    // sessionEnableRedirect.setFetchSize(10000);
 
-    insertRecord4Redirect();
-    query4Redirect();
-    sessionEnableRedirect.close();
+    //    insertRecord4Redirect();
+    //    query4Redirect();
+    //    sessionEnableRedirect.close();
     session.close();
   }
 
@@ -373,9 +372,9 @@ public class SessionExample {
     // The schema of measurements of one device
     // only measurementId and data type in MeasurementSchema take effects in Tablet
     List<MeasurementSchema> schemaList = new ArrayList<>();
-    schemaList.add(new MeasurementSchema("s1", TSDataType.INT64));
-    schemaList.add(new MeasurementSchema("s2", TSDataType.INT64));
-    schemaList.add(new MeasurementSchema("s3", TSDataType.INT64));
+    for (int i = 0; i < 10000; i++) {
+      schemaList.add(new MeasurementSchema("s" + i, TSDataType.INT64));
+    }
 
     Tablet tablet = new Tablet(ROOT_SG1_D1, schemaList, 100);
 
@@ -385,7 +384,7 @@ public class SessionExample {
     for (long row = 0; row < 100; row++) {
       int rowIndex = tablet.rowSize++;
       tablet.addTimestamp(rowIndex, timestamp);
-      for (int s = 0; s < 3; s++) {
+      for (int s = 0; s < 10000; s++) {
         long value = new Random().nextLong();
         tablet.addValue(schemaList.get(s).getMeasurementId(), rowIndex, value);
       }
@@ -401,27 +400,7 @@ public class SessionExample {
       tablet.reset();
     }
 
-    // Method 2 to add tablet data
-    long[] timestamps = tablet.timestamps;
-    Object[] values = tablet.values;
-
-    for (long time = 0; time < 100; time++) {
-      int row = tablet.rowSize++;
-      timestamps[row] = time;
-      for (int i = 0; i < 3; i++) {
-        long[] sensor = (long[]) values[i];
-        sensor[row] = i;
-      }
-      if (tablet.rowSize == tablet.getMaxRowNumber()) {
-        session.insertTablet(tablet, true);
-        tablet.reset();
-      }
-    }
-
-    if (tablet.rowSize != 0) {
-      session.insertTablet(tablet);
-      tablet.reset();
-    }
+    session.executeNonQueryStatement("flush");
   }
 
   private static void insertTabletWithNullValues()
diff --git a/server/src/main/java/org/apache/iotdb/db/tools/TsFileSelfCheckTool.java b/server/src/main/java/org/apache/iotdb/db/tools/TsFileSelfCheckTool.java
index 1309fdf..c7db7e0 100644
--- a/server/src/main/java/org/apache/iotdb/db/tools/TsFileSelfCheckTool.java
+++ b/server/src/main/java/org/apache/iotdb/db/tools/TsFileSelfCheckTool.java
@@ -125,7 +125,7 @@ public class TsFileSelfCheckTool {
           while (buffer.hasRemaining()) {
             long pos = startOffset + buffer.position();
             TimeseriesMetadata timeseriesMetadata =
-                TimeseriesMetadata.deserializeFrom(buffer, needChunkMetadata);
+                TimeseriesMetadata.deserializeFrom(buffer, needChunkMetadata, this);
             timeseriesMetadataMap.put(
                 pos,
                 new Pair<>(
diff --git a/server/src/main/java/org/apache/iotdb/db/tools/TsFileSketchTool.java b/server/src/main/java/org/apache/iotdb/db/tools/TsFileSketchTool.java
index a8cac43..7a4a71e 100644
--- a/server/src/main/java/org/apache/iotdb/db/tools/TsFileSketchTool.java
+++ b/server/src/main/java/org/apache/iotdb/db/tools/TsFileSketchTool.java
@@ -19,6 +19,15 @@
 
 package org.apache.iotdb.db.tools;
 
+import java.io.FileWriter;
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.nio.BufferOverflowException;
+import java.nio.ByteBuffer;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.TreeMap;
 import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
 import org.apache.iotdb.tsfile.file.MetaMarker;
 import org.apache.iotdb.tsfile.file.header.ChunkGroupHeader;
@@ -38,16 +47,6 @@ import org.apache.iotdb.tsfile.read.common.Path;
 import org.apache.iotdb.tsfile.utils.BloomFilter;
 import org.apache.iotdb.tsfile.utils.Pair;
 
-import java.io.FileWriter;
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.nio.BufferOverflowException;
-import java.nio.ByteBuffer;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.TreeMap;
-
 public class TsFileSketchTool {
 
   private String filename;
@@ -409,7 +408,7 @@ public class TsFileSketchTool {
   }
 
   private static Pair<String, String> checkArgs(String[] args) {
-    String filename = "test.tsfile";
+    String filename = "/Users/SilverNarcissus/Desktop/1642246707919-5-0-0.tsfile";
     String outFile = "TsFile_sketch_view.txt";
     if (args.length == 1) {
       filename = args[0];
@@ -504,7 +503,7 @@ public class TsFileSketchTool {
             null,
             metadataIndexNode.getNodeType(),
             timeseriesMetadataMap,
-            false);
+            true);
       }
       return timeseriesMetadataMap;
     }