This is an automated email from the ASF dual-hosted git repository.

haonan pushed a commit to branch batch_wal
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 25b0e3aef4811fa1ab0011ffcbcfcdb64aae98e3
Author: HTHou <[email protected]>
AuthorDate: Mon Apr 1 16:17:59 2024 +0800

    fix double write bug
---
 .../org/apache/iotdb/db/storageengine/dataregion/DataRegion.java    | 5 -----
 .../iotdb/db/storageengine/dataregion/wal/buffer/WALEntry.java      | 6 ++++++
 2 files changed, 6 insertions(+), 5 deletions(-)

diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/DataRegion.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/DataRegion.java
index 98e92d7f2fb..5152d9bf498 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/DataRegion.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/DataRegion.java
@@ -1193,11 +1193,6 @@ public class DataRegion implements IDataRegionForQuery {
             v.addOneInsertRowNode(insertRowNode, finalI);
             return v;
           });
-      try {
-        tsFileProcessor.insert(insertRowNode, costsForMetrics);
-      } catch (WriteProcessException e) {
-        insertRowsNode.getResults().put(i, 
RpcUtils.getStatus(e.getErrorCode(), e.getMessage()));
-      }
       executedInsertRowNodeList.add(insertRowNode);
     }
 
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/wal/buffer/WALEntry.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/wal/buffer/WALEntry.java
index 57bedf84567..dff07dae0ef 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/wal/buffer/WALEntry.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/wal/buffer/WALEntry.java
@@ -23,6 +23,7 @@ import 
org.apache.iotdb.db.queryengine.plan.planner.plan.node.PlanNode;
 import org.apache.iotdb.db.queryengine.plan.planner.plan.node.PlanNodeType;
 import 
org.apache.iotdb.db.queryengine.plan.planner.plan.node.write.DeleteDataNode;
 import 
org.apache.iotdb.db.queryengine.plan.planner.plan.node.write.InsertRowNode;
+import 
org.apache.iotdb.db.queryengine.plan.planner.plan.node.write.InsertRowsNode;
 import 
org.apache.iotdb.db.queryengine.plan.planner.plan.node.write.InsertTabletNode;
 import org.apache.iotdb.db.storageengine.dataregion.memtable.AbstractMemTable;
 import org.apache.iotdb.db.storageengine.dataregion.memtable.IMemTable;
@@ -64,6 +65,8 @@ public abstract class WALEntry implements SerializedSize {
       this.type = WALEntryType.INSERT_ROW_NODE;
     } else if (value instanceof InsertTabletNode) {
       this.type = WALEntryType.INSERT_TABLET_NODE;
+    } else if (value instanceof InsertRowsNode) {
+      this.type = WALEntryType.INSERT_ROWS_NODE;
     } else if (value instanceof DeleteDataNode) {
       this.type = WALEntryType.DELETE_DATA_NODE;
     } else if (value instanceof Checkpoint) {
@@ -110,6 +113,9 @@ public abstract class WALEntry implements SerializedSize {
       case INSERT_TABLET_NODE:
         value = (InsertTabletNode) PlanNodeType.deserializeFromWAL(stream);
         break;
+      case INSERT_ROWS_NODE:
+        value = (InsertRowsNode) PlanNodeType.deserializeFromWAL(stream);
+        break;
       case DELETE_DATA_NODE:
         value = (DeleteDataNode) PlanNodeType.deserializeFromWAL(stream);
         break;

Reply via email to