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

kirs pushed a commit to branch branch-2.0
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-2.0 by this push:
     new b15854a19f3 routine load date where expression rewrite should change 
over time (#33763)
b15854a19f3 is described below

commit b15854a19f38941aa45339b54876a9ae6fa17e5b
Author: HHoflittlefish777 <77738092+hhoflittlefish...@users.noreply.github.com>
AuthorDate: Thu Apr 18 10:18:20 2024 +0800

    routine load date where expression rewrite should change over time (#33763)
---
 .../src/main/java/org/apache/doris/load/BrokerFileGroup.java   |  4 ++++
 .../main/java/org/apache/doris/planner/StreamLoadPlanner.java  | 10 ++++++++--
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/load/BrokerFileGroup.java 
b/fe/fe-core/src/main/java/org/apache/doris/load/BrokerFileGroup.java
index c193ab8f773..2b493eefb45 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/load/BrokerFileGroup.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/load/BrokerFileGroup.java
@@ -311,6 +311,10 @@ public class BrokerFileGroup implements Writable {
         return whereExpr;
     }
 
+    public void setWhereExpr(Expr whereExpr) {
+        this.whereExpr = whereExpr;
+    }
+
     public List<String> getFilePaths() {
         return filePaths;
     }
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/planner/StreamLoadPlanner.java 
b/fe/fe-core/src/main/java/org/apache/doris/planner/StreamLoadPlanner.java
index 2cbc111a596..16c9e8f32eb 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/planner/StreamLoadPlanner.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/planner/StreamLoadPlanner.java
@@ -220,8 +220,10 @@ public class StreamLoadPlanner {
         }
         scanTupleDesc.setTable(destTable);
         analyzer.registerTupleDescriptor(scanTupleDesc);
+        Expr whereExpr = null;
         if (null != taskInfo.getWhereExpr()) {
-            taskInfo.getWhereExpr().analyze(analyzer);
+            whereExpr = taskInfo.getWhereExpr().clone();
+            whereExpr.analyze(analyzer);
         }
         // create scan node
         FileLoadScanNode fileScanNode = new FileLoadScanNode(new 
PlanNodeId(0), scanTupleDesc);
@@ -229,6 +231,7 @@ public class StreamLoadPlanner {
         DataDescription dataDescription = new 
DataDescription(destTable.getName(), taskInfo);
         dataDescription.analyzeWithoutCheckPriv(db.getFullName());
         BrokerFileGroup fileGroup = new BrokerFileGroup(dataDescription);
+        fileGroup.setWhereExpr(whereExpr);
         fileGroup.parse(db, dataDescription);
         // 2. create dummy file status
         TBrokerFileStatus fileStatus = new TBrokerFileStatus();
@@ -434,8 +437,10 @@ public class StreamLoadPlanner {
         }
         scanTupleDesc.setTable(destTable);
         analyzer.registerTupleDescriptor(scanTupleDesc);
+        Expr whereExpr = null;
         if (null != taskInfo.getWhereExpr()) {
-            taskInfo.getWhereExpr().analyze(analyzer);
+            whereExpr = taskInfo.getWhereExpr().clone();
+            whereExpr.analyze(analyzer);
         }
         // create scan node
         FileLoadScanNode fileScanNode = new FileLoadScanNode(new 
PlanNodeId(0), scanTupleDesc);
@@ -443,6 +448,7 @@ public class StreamLoadPlanner {
         DataDescription dataDescription = new 
DataDescription(destTable.getName(), taskInfo);
         dataDescription.analyzeWithoutCheckPriv(db.getFullName());
         BrokerFileGroup fileGroup = new BrokerFileGroup(dataDescription);
+        fileGroup.setWhereExpr(whereExpr);
         fileGroup.parse(db, dataDescription);
         // 2. create dummy file status
         TBrokerFileStatus fileStatus = new TBrokerFileStatus();


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to