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

jakevin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new a3f06e5fbd [git](Nereids): ignore apache parquet. (#19765)
a3f06e5fbd is described below

commit a3f06e5fbdeb5f74595addc7d0bf72d7091a36eb
Author: jakevin <jakevin...@gmail.com>
AuthorDate: Thu May 18 10:54:46 2023 +0800

    [git](Nereids): ignore apache parquet. (#19765)
---
 .gitignore                                         |  2 +-
 .../rules/rewrite/logical/MergeSetOperations.java  | 39 +++++++++-------------
 2 files changed, 17 insertions(+), 24 deletions(-)

diff --git a/.gitignore b/.gitignore
index 5c9626e2ec..59ad7208bd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,7 +3,6 @@
 *.pyc
 *.class
 *.iml
-*.swp
 *.jar
 *.log
 *.so.tmp
@@ -76,6 +75,7 @@ 
fe/fe-core/src/main/antlr4/org/apache/doris/nereids/DorisLexer.tokens
 fe/fe-core/src/main/antlr4/org/apache/doris/nereids/gen/
 fe/fe-common/src/main/java/org/apache/doris/thrift
 fe/fe-common/src/main/java/org/apache/parquet
+fe/fe-core/src/main/java/org/apache/parquet
 
 # BE
 be/build*/
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/MergeSetOperations.java
 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/MergeSetOperations.java
index 56f924684c..757388c417 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/MergeSetOperations.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/MergeSetOperations.java
@@ -30,22 +30,20 @@ import java.util.List;
 import java.util.stream.Stream;
 
 /**
- * optimization.
  * Merge nodes of the same type and same qualifier.
- *
+ * <p>
  * eg: select k1, k2 from t1 union select 1, 2 union select d1, d2 from t2;
- * before:
- *                          logicalUnion()
- *                      /                    \
- *              logicalUnion()           logicalProject
- *              /           \
- *    logicalProject  logicalOneRowRelation
- *
- * after:
- *      2. MERGE_SET_OPERATION
- *                              logicalUnion()
- *                  /                 \                 \
- *         logicalProject     logicalOneRowRelation     logicalProject
+ * <pre>
+ *     union
+ *    /    \
+ *   union  scan3
+ *   /   \
+ * scan1 scan2
+ * -->
+ *      union
+ *     /  |  \
+ * scan1 scan2 scan3
+ * </pre>
  */
 public class MergeSetOperations implements RewriteRuleFactory {
     @Override
@@ -72,22 +70,17 @@ public class MergeSetOperations implements 
RewriteRuleFactory {
     /** canMerge */
     public static boolean canMerge(LogicalSetOperation parent) {
         Plan left = parent.child(0);
-        if (canMerge(parent, left)) {
-            return true;
-        }
         Plan right = parent.child(1);
-        if (canMerge(parent, right)) {
-            return true;
-        }
-        return false;
+
+        return canMerge(parent, left) || canMerge(parent, right);
     }
 
-    public static final boolean canMerge(LogicalSetOperation parent, Plan 
child) {
+    public static boolean canMerge(LogicalSetOperation parent, Plan child) {
         return child.getClass().equals(parent.getClass())
                 && isSameQualifierOrChildQualifierIsAll(parent, 
(LogicalSetOperation) child);
     }
 
-    public static final boolean 
isSameQualifierOrChildQualifierIsAll(LogicalSetOperation parentSetOperation,
+    public static boolean 
isSameQualifierOrChildQualifierIsAll(LogicalSetOperation parentSetOperation,
                                                          LogicalSetOperation 
childSetOperation) {
         return parentSetOperation.getQualifier() == 
childSetOperation.getQualifier()
                 || childSetOperation.getQualifier() == Qualifier.ALL;


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

Reply via email to