This is an automated email from the ASF dual-hosted git repository.
yuyuankang pushed a commit to branch kyy2
in repository https://gitbox.apache.org/repos/asf/incubator-iotdb.git
The following commit(s) were added to refs/heads/kyy2 by this push:
new 8c8b628 get data type from insert tablet plan
8c8b628 is described below
commit 8c8b62838a67b57ff46573cd0e4fc001fdaa4c09
Author: Ring-k <[email protected]>
AuthorDate: Tue Jul 14 23:20:36 2020 +0800
get data type from insert tablet plan
---
.../apache/iotdb/cluster/server/member/MetaGroupMember.java | 10 ++++++----
.../main/java/org/apache/iotdb/tsfile/write/record/Tablet.java | 6 +++---
2 files changed, 9 insertions(+), 7 deletions(-)
diff --git
a/cluster/src/main/java/org/apache/iotdb/cluster/server/member/MetaGroupMember.java
b/cluster/src/main/java/org/apache/iotdb/cluster/server/member/MetaGroupMember.java
index 4778508..6c2cb04 100644
---
a/cluster/src/main/java/org/apache/iotdb/cluster/server/member/MetaGroupMember.java
+++
b/cluster/src/main/java/org/apache/iotdb/cluster/server/member/MetaGroupMember.java
@@ -19,6 +19,7 @@
package org.apache.iotdb.cluster.server.member;
+import java.lang.reflect.Array;
import java.net.SocketTimeoutException;
import org.apache.iotdb.cluster.ClusterFileFlushPolicy;
import org.apache.iotdb.cluster.client.async.AsyncClientPool;
@@ -1487,7 +1488,7 @@ public class MetaGroupMember extends RaftMember {
status = forwardToMultipleGroup(planGroupMap);
}
}
- if (plan instanceof InsertRowPlan
+ if (plan instanceof InsertPlan
&& status.getCode() ==
TSStatusCode.TIMESERIES_NOT_EXIST.getStatusCode()
&&
ClusterDescriptor.getInstance().getConfig().isEnableAutoCreateSchema()) {
// try to create timeseries
@@ -1652,9 +1653,10 @@ public class MetaGroupMember extends RaftMember {
List<String> unregisteredSeriesList =
getUnregisteredSeriesList(seriesList, partitionGroup);
for (String seriesPath : unregisteredSeriesList) {
int index = seriesList.indexOf(seriesPath);
- TSDataType dataType = TypeInferenceUtils
- .getPredictedDataType(insertPlan instanceof InsertTabletPlan
- ? ((Object[]) ((InsertTabletPlan)
insertPlan).getColumns()[index])[0]
+ TSDataType dataType = insertPlan.getDataTypes() != null
+ ? insertPlan.getDataTypes()[index]
+ : TypeInferenceUtils.getPredictedDataType(insertPlan instanceof
InsertTabletPlan
+ ? Array.get(((InsertTabletPlan) insertPlan).getColumns()[index],
0)
: ((InsertRowPlan) insertPlan).getValues()[index], true);
TSEncoding encoding = getDefaultEncoding(dataType);
CompressionType compressionType =
TSFileDescriptor.getInstance().getConfig().getCompressor();
diff --git
a/tsfile/src/main/java/org/apache/iotdb/tsfile/write/record/Tablet.java
b/tsfile/src/main/java/org/apache/iotdb/tsfile/write/record/Tablet.java
index 1ead641..2121db3 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/write/record/Tablet.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/write/record/Tablet.java
@@ -74,10 +74,10 @@ public class Tablet {
* constructor (all Tablet should be the same size).
*
* @param deviceId the name of the device specified to be written in
- * @param timeseries the list of measurement schemas for creating the tablet
+ * @param schemas the list of measurement schemas for creating the tablet
*/
- public Tablet(String deviceId, List<MeasurementSchema> timeseries) {
- this(deviceId, timeseries, DEFAULT_SIZE);
+ public Tablet(String deviceId, List<MeasurementSchema> schemas) {
+ this(deviceId, schemas, DEFAULT_SIZE);
}
/**