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 2023/05/10 03:57:14 UTC

[iotdb] branch follower_no_last_cache created (now 68ac8560a7)

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

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


      at 68ac8560a7 Follower doesn't need to update last cache

This branch includes the following new commits:

     new 68ac8560a7 Follower doesn't need to update last cache

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[iotdb] 01/01: Follower doesn't need to update last cache

Posted by ha...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 68ac8560a7686babbfccd957aef1982a7e0aec93
Author: HTHou <hh...@outlook.com>
AuthorDate: Wed May 10 11:55:05 2023 +0800

    Follower doesn't need to update last cache
---
 .../main/java/org/apache/iotdb/db/engine/storagegroup/DataRegion.java | 4 ++--
 .../apache/iotdb/db/mpp/plan/planner/plan/node/write/InsertNode.java  | 4 ++++
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/DataRegion.java b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/DataRegion.java
index bcb4078187..f33aa34857 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/DataRegion.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/DataRegion.java
@@ -1146,7 +1146,7 @@ public class DataRegion implements IDataRegionForQuery {
   }
 
   private void tryToUpdateBatchInsertLastCache(InsertTabletNode node, long latestFlushedTime) {
-    if (!IoTDBDescriptor.getInstance().getConfig().isLastCacheEnabled()) {
+    if (!IoTDBDescriptor.getInstance().getConfig().isLastCacheEnabled() || !node.isFromLeader()) {
       return;
     }
     DataNodeSchemaCache.getInstance()
@@ -1186,7 +1186,7 @@ public class DataRegion implements IDataRegionForQuery {
   }
 
   private void tryToUpdateInsertLastCache(InsertRowNode node, long latestFlushedTime) {
-    if (!IoTDBDescriptor.getInstance().getConfig().isLastCacheEnabled()) {
+    if (!IoTDBDescriptor.getInstance().getConfig().isLastCacheEnabled() || !node.isFromLeader()) {
       return;
     }
     DataNodeSchemaCache.getInstance()
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 0994935c95..a953985b84 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
@@ -292,6 +292,10 @@ public abstract class InsertNode extends WritePlanNode {
 
   public abstract Object getFirstValueOfIndex(int index);
 
+  public boolean isFromLeader() {
+    return searchIndex == ConsensusReqReader.DEFAULT_SEARCH_INDEX;
+  }
+
   // region partial insert
   /**
    * Mark failed measurement, measurements[index], dataTypes[index] and values/columns[index] would