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/11/23 12:13:16 UTC
[iotdb] branch master updated: [IOTDB-4972] Fix NPE when validate schema without auto create schema (#8115)
This is an automated email from the ASF dual-hosted git repository.
haonan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new 91a279a8a6 [IOTDB-4972] Fix NPE when validate schema without auto create schema (#8115)
91a279a8a6 is described below
commit 91a279a8a6b8f99600a54392c761f0f4f3f37608
Author: Marcos_Zyk <38...@users.noreply.github.com>
AuthorDate: Wed Nov 23 20:13:09 2022 +0800
[IOTDB-4972] Fix NPE when validate schema without auto create schema (#8115)
---
.../iotdb/db/mpp/plan/planner/plan/node/write/InsertNode.java | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
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 c53bb9fcee..eb2e52cf28 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
@@ -248,10 +248,9 @@ public abstract class InsertNode extends WritePlanNode {
/** Check whether data types are matched with measurement schemas */
protected void selfCheckDataTypes() throws DataTypeMismatchException {
for (int i = 0; i < measurementSchemas.length; i++) {
- if (dataTypes[i] != measurementSchemas[i].getType()) {
- if (checkAndCastDataType(i, measurementSchemas[i].getType())) {
- continue;
- }
+ if (measurementSchemas[i] == null
+ || (dataTypes[i] != measurementSchemas[i].getType()
+ && !checkAndCastDataType(i, measurementSchemas[i].getType()))) {
if (!IoTDBDescriptor.getInstance().getConfig().isEnablePartialInsert()) {
throw new DataTypeMismatchException(
devicePath.getFullPath(),