diff --git a/server/src/main/java/org/apache/iotdb/db/exception/metadata/DataTypeMismatchException.java b/server/src/main/java/org/apache/iotdb/db/exception/metadata/DataTypeMismatchException.java index 2b7874b7ea4f..e7ede2851722 100644 --- a/server/src/main/java/org/apache/iotdb/db/exception/metadata/DataTypeMismatchException.java +++ b/server/src/main/java/org/apache/iotdb/db/exception/metadata/DataTypeMismatchException.java @@ -26,7 +26,7 @@ public DataTypeMismatchException( String deviceName, String measurementName, TSDataType insertType, - TSDataType realType, + TSDataType typeInSchema, long time, Object value) { super( @@ -34,7 +34,7 @@ public DataTypeMismatchException( "data type of %s.%s is not consistent, registered type %s, inserting type %s, timestamp %s, value %s", deviceName, measurementName, - realType, + typeInSchema, insertType, time, value == null diff --git a/server/src/main/java/org/apache/iotdb/db/metadata/schemaregion/SchemaRegionUtils.java b/server/src/main/java/org/apache/iotdb/db/metadata/schemaregion/SchemaRegionUtils.java index f9049481eb7f..c95ea5b7f82c 100644 --- a/server/src/main/java/org/apache/iotdb/db/metadata/schemaregion/SchemaRegionUtils.java +++ b/server/src/main/java/org/apache/iotdb/db/metadata/schemaregion/SchemaRegionUtils.java @@ -67,7 +67,7 @@ public static void deleteSchemaRegionFolder(String schemaRegionDirPath, Logger l } } - public static void checkDataTypeMatch(InsertPlan plan, int loc, TSDataType dataType) + public static void checkDataTypeMatch(InsertPlan plan, int loc, TSDataType dataTypeInSchema) throws MetadataException { TSDataType insertDataType; if (plan instanceof InsertRowPlan) { @@ -75,19 +75,19 @@ public static void checkDataTypeMatch(InsertPlan plan, int loc, TSDataType dataT // only when InsertRowPlan's values is object[], we should check type insertDataType = getTypeInLoc(plan, loc); } else { - insertDataType = dataType; + insertDataType = dataTypeInSchema; } } else { insertDataType = getTypeInLoc(plan, loc); } - if (dataType != insertDataType) { + if (dataTypeInSchema != insertDataType) { String measurement = plan.getMeasurements()[loc]; String device = plan.getDevicePath().getFullPath(); throw new DataTypeMismatchException( device, measurement, insertDataType, - dataType, + dataTypeInSchema, plan.getMinTime(), plan.getFirstValueOfIndex(loc)); } diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/write/InsertNode.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/write/InsertNode.java index 610628b33434..ac4bb3c2f8d3 100644 --- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/write/InsertNode.java +++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/write/InsertNode.java @@ -254,8 +254,8 @@ protected boolean selfCheckDataTypes() { new DataTypeMismatchException( devicePath.getFullPath(), measurements[i], - measurementSchemas[i].getType(), dataTypes[i], + measurementSchemas[i].getType(), getMinTime(), getFirstValueOfIndex(i))); }