This is an automated email from the ASF dual-hosted git repository.
morrysnow 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 a3095e29d5 [fix](nereids)translate is not null predicate mistake
(#14866)
a3095e29d5 is described below
commit a3095e29d53c3f9c3258b9b42f2adf05cb655cc9
Author: starocean999 <[email protected]>
AuthorDate: Wed Dec 7 20:14:13 2022 +0800
[fix](nereids)translate is not null predicate mistake (#14866)
the 'is not null' predicate is not translated correctly in
ExpressionTranslator
---
.../doris/nereids/glue/translator/ExpressionTranslator.java | 2 +-
.../data/bloom_filter_p0/test_bloom_filter_is_not_null.out | 10 ++++++++++
.../bloom_filter_p0/test_bloom_filter_is_not_null.groovy | 11 +++++++++++
3 files changed, 22 insertions(+), 1 deletion(-)
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/glue/translator/ExpressionTranslator.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/glue/translator/ExpressionTranslator.java
index 1863da7c7f..00069ff284 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/glue/translator/ExpressionTranslator.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/glue/translator/ExpressionTranslator.java
@@ -172,7 +172,7 @@ public class ExpressionTranslator extends
DefaultExpressionVisitor<Expr, PlanTra
} else if (not.child() instanceof InSubquery || not.child() instanceof
Exists) {
return new BoolLiteral(true);
} else if (not.child() instanceof IsNull) {
- return new IsNullPredicate(not.child().accept(this, context),
true);
+ return new IsNullPredicate(((IsNull)
not.child()).child().accept(this, context), true);
} else {
return new CompoundPredicate(CompoundPredicate.Operator.NOT,
not.child(0).accept(this, context), null);
diff --git
a/regression-test/data/bloom_filter_p0/test_bloom_filter_is_not_null.out
b/regression-test/data/bloom_filter_p0/test_bloom_filter_is_not_null.out
index f578ece9b8..bb14d3d467 100644
--- a/regression-test/data/bloom_filter_p0/test_bloom_filter_is_not_null.out
+++ b/regression-test/data/bloom_filter_p0/test_bloom_filter_is_not_null.out
@@ -9,3 +9,13 @@ b
-- !select_null --
\N
+-- !select_all --
+\N
+b
+
+-- !select_not_null --
+b
+
+-- !select_null --
+\N
+
diff --git
a/regression-test/suites/bloom_filter_p0/test_bloom_filter_is_not_null.groovy
b/regression-test/suites/bloom_filter_p0/test_bloom_filter_is_not_null.groovy
index e29da1725e..c805138301 100644
---
a/regression-test/suites/bloom_filter_p0/test_bloom_filter_is_not_null.groovy
+++
b/regression-test/suites/bloom_filter_p0/test_bloom_filter_is_not_null.groovy
@@ -33,7 +33,18 @@ suite("test_bloom_filter_is_not_null") {
sql """INSERT INTO ${table_name} values (null), ('b')"""
+ sql 'set enable_nereids_planner=false'
qt_select_all """select * from ${table_name} order by a"""
qt_select_not_null """select * from ${table_name} WHERE a is not null"""
qt_select_null """select * from ${table_name} WHERE a is null"""
+
+ sql 'set enable_vectorized_engine=true'
+ sql 'set enable_nereids_planner=true'
+ sql 'set enable_fallback_to_original_planner=false'
+ qt_select_all """select * from ${table_name} order by a"""
+ qt_select_not_null """select * from ${table_name} WHERE a is not null"""
+ qt_select_null """select * from ${table_name} WHERE a is null"""
+
+ sql 'set enable_nereids_planner=false'
+ sql 'set enable_fallback_to_original_planner=true'
}
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]