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/09/22 06:17:07 UTC

[iotdb] branch master updated: [IOTDB-4477] fix castDataType error (#7398)

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 22149b0f99 [IOTDB-4477] fix castDataType error (#7398)
22149b0f99 is described below

commit 22149b0f998f95b24bc240ad881a81e3110ebe49
Author: Haonan <hh...@outlook.com>
AuthorDate: Thu Sep 22 14:17:02 2022 +0800

    [IOTDB-4477] fix castDataType error (#7398)
---
 .../org/apache/iotdb/db/engine/memtable/AbstractMemTable.java | 11 ++++++++---
 .../db/mpp/plan/planner/plan/node/write/InsertTabletNode.java |  1 +
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/server/src/main/java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java b/server/src/main/java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java
index 4eaa7dfa3e..758786b544 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java
@@ -328,7 +328,8 @@ public abstract class AbstractMemTable implements IMemTable {
     }
     memSize += MemUtils.getAlignedRecordsSize(dataTypes, values, disableMemControl);
     writeAlignedRow(insertRowNode.getDeviceID(), schemaList, insertRowNode.getTime(), values);
-    int pointsInserted = insertRowNode.getMeasurements().length;
+    int pointsInserted =
+        insertRowNode.getMeasurements().length - insertRowNode.getFailedMeasurementNumber();
     totalPointsNum += pointsInserted;
 
     MetricService.getInstance()
@@ -395,7 +396,9 @@ public abstract class AbstractMemTable implements IMemTable {
     try {
       write(insertTabletNode, start, end);
       memSize += MemUtils.getTabletSize(insertTabletNode, start, end, disableMemControl);
-      int pointsInserted = insertTabletNode.getDataTypes().length * (end - start);
+      int pointsInserted =
+          (insertTabletNode.getDataTypes().length - insertTabletNode.getFailedMeasurementNumber())
+              * (end - start);
       totalPointsNum += pointsInserted;
       MetricService.getInstance()
           .count(
@@ -418,7 +421,9 @@ public abstract class AbstractMemTable implements IMemTable {
     try {
       writeAlignedTablet(insertTabletNode, start, end);
       memSize += MemUtils.getAlignedTabletSize(insertTabletNode, start, end, disableMemControl);
-      int pointsInserted = insertTabletNode.getDataTypes().length * (end - start);
+      int pointsInserted =
+          (insertTabletNode.getDataTypes().length - insertTabletNode.getFailedMeasurementNumber())
+              * (end - start);
       totalPointsNum += pointsInserted;
       MetricService.getInstance()
           .count(
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/write/InsertTabletNode.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/write/InsertTabletNode.java
index 4d5bf930e7..86acccf1a1 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/write/InsertTabletNode.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/write/InsertTabletNode.java
@@ -197,6 +197,7 @@ public class InsertTabletNode extends InsertNode implements WALEntryValue {
       columns[columnIndex] =
           CommonUtils.castArray(dataTypes[columnIndex], dataType, columns[columnIndex]);
       dataTypes[columnIndex] = dataType;
+      return true;
     }
     return false;
   }