You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ha...@apache.org on 2022/04/28 07:20:51 UTC
[iotdb] 01/01: debug
This is an automated email from the ASF dual-hosted git repository.
haonan pushed a commit to branch SessionInsertDebug
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit fe6d4731606df85d600f0a3228a013eefd1409f5
Author: HTHou <hh...@outlook.com>
AuthorDate: Thu Apr 28 15:20:37 2022 +0800
debug
---
.../main/java/org/apache/iotdb/SessionExample.java | 138 +++++++++++----------
.../db/mpp/sql/parser/StatementGenerator.java | 3 +-
.../mpp/sql/statement/crud/InsertRowStatement.java | 1 +
3 files changed, 73 insertions(+), 69 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 b86a4cbcf7..3dbd4c9b1c 100644
--- a/example/session/src/main/java/org/apache/iotdb/SessionExample.java
+++ b/example/session/src/main/java/org/apache/iotdb/SessionExample.java
@@ -69,18 +69,18 @@ public class SessionExample {
// set session fetchSize
session.setFetchSize(10000);
+ //session.executeNonQueryStatement("set storage group to root.sg1");
- try {
- session.setStorageGroup("root.sg1");
- } catch (StatementExecutionException e) {
- if (e.getStatusCode() != TSStatusCode.PATH_ALREADY_EXIST_ERROR.getStatusCode()) {
- throw e;
- }
- }
+// try {
+// session.setStorageGroup("root.sg1");
+// } catch (StatementExecutionException e) {
+// if (e.getStatusCode() != TSStatusCode.PATH_ALREADY_EXIST_ERROR.getStatusCode()) {
+// throw e;
+// }
+// }
// createTemplate();
- createTimeseries();
- createMultiTimeseries();
+ //createTimeseries();
insertRecord();
insertTablet();
// insertTabletWithNullValues();
@@ -98,16 +98,16 @@ public class SessionExample {
// deleteTimeseries();
// setTimeout();
- sessionEnableRedirect = new Session(LOCAL_HOST, 6667, "root", "root");
- sessionEnableRedirect.setEnableQueryRedirection(true);
- sessionEnableRedirect.open(false);
-
- // set session fetchSize
- sessionEnableRedirect.setFetchSize(10000);
-
- insertRecord4Redirect();
- query4Redirect();
- sessionEnableRedirect.close();
+// sessionEnableRedirect = new Session(LOCAL_HOST, 6667, "root", "root");
+// sessionEnableRedirect.setEnableQueryRedirection(true);
+// sessionEnableRedirect.open(false);
+//
+// // set session fetchSize
+// sessionEnableRedirect.setFetchSize(10000);
+//
+// insertRecord4Redirect();
+// query4Redirect();
+// sessionEnableRedirect.close();
session.close();
}
@@ -133,56 +133,60 @@ public class SessionExample {
private static void createTimeseries()
throws IoTDBConnectionException, StatementExecutionException {
-
- if (!session.checkTimeseriesExists(ROOT_SG1_D1_S1)) {
- session.createTimeseries(
- ROOT_SG1_D1_S1, TSDataType.INT64, TSEncoding.RLE, CompressionType.SNAPPY);
- }
- if (!session.checkTimeseriesExists(ROOT_SG1_D1_S2)) {
- session.createTimeseries(
- ROOT_SG1_D1_S2, TSDataType.INT64, TSEncoding.RLE, CompressionType.SNAPPY);
- }
- if (!session.checkTimeseriesExists(ROOT_SG1_D1_S3)) {
- session.createTimeseries(
- ROOT_SG1_D1_S3, TSDataType.INT64, TSEncoding.RLE, CompressionType.SNAPPY);
- }
-
- // create timeseries with tags and attributes
- if (!session.checkTimeseriesExists(ROOT_SG1_D1_S4)) {
- Map<String, String> tags = new HashMap<>();
- tags.put("tag1", "v1");
- Map<String, String> attributes = new HashMap<>();
- attributes.put("description", "v1");
- session.createTimeseries(
- ROOT_SG1_D1_S4,
- TSDataType.INT64,
- TSEncoding.RLE,
- CompressionType.SNAPPY,
- null,
- tags,
- attributes,
- "temperature");
- }
+ session.executeNonQueryStatement("create timeseries root.sg1.d1.s1 with datatype=int64");
+ session.executeNonQueryStatement("create timeseries root.sg1.d1.s2 with datatype=int64");
+ session.executeNonQueryStatement("create timeseries root.sg1.d1.s3 with datatype=int64");
+
+
+// if (!session.checkTimeseriesExists(ROOT_SG1_D1_S1)) {
+// session.createTimeseries(
+// ROOT_SG1_D1_S1, TSDataType.INT64, TSEncoding.RLE, CompressionType.SNAPPY);
+//// }
+//// if (!session.checkTimeseriesExists(ROOT_SG1_D1_S2)) {
+// session.createTimeseries(
+// ROOT_SG1_D1_S2, TSDataType.INT64, TSEncoding.RLE, CompressionType.SNAPPY);
+//// }
+//// if (!session.checkTimeseriesExists(ROOT_SG1_D1_S3)) {
+// session.createTimeseries(
+// ROOT_SG1_D1_S3, TSDataType.INT64, TSEncoding.RLE, CompressionType.SNAPPY);
+//// }
+
+// // create timeseries with tags and attributes
+// if (!session.checkTimeseriesExists(ROOT_SG1_D1_S4)) {
+// Map<String, String> tags = new HashMap<>();
+// tags.put("tag1", "v1");
+// Map<String, String> attributes = new HashMap<>();
+// attributes.put("description", "v1");
+// session.createTimeseries(
+// ROOT_SG1_D1_S4,
+// TSDataType.INT64,
+// TSEncoding.RLE,
+// CompressionType.SNAPPY,
+// null,
+// tags,
+// attributes,
+// "temperature");
+// }
// create timeseries with SDT property, SDT will take place when flushing
- if (!session.checkTimeseriesExists(ROOT_SG1_D1_S5)) {
- // COMPDEV is required
- // COMPMAXTIME and COMPMINTIME are optional and their unit is ms
- Map<String, String> props = new HashMap<>();
- props.put("LOSS", "sdt");
- props.put("COMPDEV", "0.01");
- props.put("COMPMINTIME", "2");
- props.put("COMPMAXTIME", "10");
- session.createTimeseries(
- ROOT_SG1_D1_S5,
- TSDataType.INT64,
- TSEncoding.RLE,
- CompressionType.SNAPPY,
- props,
- null,
- null,
- null);
- }
+// if (!session.checkTimeseriesExists(ROOT_SG1_D1_S5)) {
+// // COMPDEV is required
+// // COMPMAXTIME and COMPMINTIME are optional and their unit is ms
+// Map<String, String> props = new HashMap<>();
+// props.put("LOSS", "sdt");
+// props.put("COMPDEV", "0.01");
+// props.put("COMPMINTIME", "2");
+// props.put("COMPMAXTIME", "10");
+// session.createTimeseries(
+// ROOT_SG1_D1_S5,
+// TSDataType.INT64,
+// TSEncoding.RLE,
+// CompressionType.SNAPPY,
+// props,
+// null,
+// null,
+// null);
+// }
}
private static void createMultiTimeseries()
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/sql/parser/StatementGenerator.java b/server/src/main/java/org/apache/iotdb/db/mpp/sql/parser/StatementGenerator.java
index 5545e169e7..92d3bf2d0d 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/sql/parser/StatementGenerator.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/sql/parser/StatementGenerator.java
@@ -165,10 +165,9 @@ public class StatementGenerator {
InsertRowStatement insertStatement = new InsertRowStatement();
insertStatement.setDevicePath(new PartialPath(insertRecordReq.getPrefixPath()));
insertStatement.setTime(insertRecordReq.getTimestamp());
-
- insertStatement.fillValues(insertRecordReq.values);
insertStatement.setMeasurements(insertRecordReq.getMeasurements().toArray(new String[0]));
insertStatement.setAligned(insertRecordReq.isAligned);
+ insertStatement.fillValues(insertRecordReq.values);
return insertStatement;
}
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/sql/statement/crud/InsertRowStatement.java b/server/src/main/java/org/apache/iotdb/db/mpp/sql/statement/crud/InsertRowStatement.java
index 72dfed7322..39f9a0ac56 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/sql/statement/crud/InsertRowStatement.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/sql/statement/crud/InsertRowStatement.java
@@ -71,6 +71,7 @@ public class InsertRowStatement extends InsertBaseStatement {
public void fillValues(ByteBuffer buffer) throws QueryProcessException {
this.values = new Object[measurements.length];
+ this.dataTypes = new TSDataType[measurements.length];
for (int i = 0; i < dataTypes.length; i++) {
// types are not determined, the situation mainly occurs when the plan uses string values
// and is forwarded to other nodes