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 2683b1e8c32 [test](Nereids): add test for scalar agg (#28712) 2683b1e8c32 is described below commit 2683b1e8c32a3c0cd0d6dea61edf778c716aacd2 Author: jakevin <jakevin...@gmail.com> AuthorDate: Wed Dec 20 17:35:04 2023 +0800 [test](Nereids): add test for scalar agg (#28712) --- .../PushDownFilterThroughAggregationTest.java | 33 +++++++++++++++++++--- 1 file changed, 29 insertions(+), 4 deletions(-) diff --git a/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/PushDownFilterThroughAggregationTest.java b/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/PushDownFilterThroughAggregationTest.java index 830921b9a2b..36cb8cee8d4 100644 --- a/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/PushDownFilterThroughAggregationTest.java +++ b/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/PushDownFilterThroughAggregationTest.java @@ -27,6 +27,8 @@ import org.apache.doris.nereids.trees.expressions.NamedExpression; import org.apache.doris.nereids.trees.expressions.Slot; import org.apache.doris.nereids.trees.expressions.StatementScopeIdGenerator; import org.apache.doris.nereids.trees.expressions.functions.agg.Max; +import org.apache.doris.nereids.trees.expressions.functions.agg.Sum; +import org.apache.doris.nereids.trees.expressions.functions.scalar.If; import org.apache.doris.nereids.trees.expressions.literal.Literal; import org.apache.doris.nereids.trees.plans.logical.LogicalOlapScan; import org.apache.doris.nereids.trees.plans.logical.LogicalPlan; @@ -91,6 +93,28 @@ public class PushDownFilterThroughAggregationTest implements MemoPatternMatchSup ); } + @Test + void scalarAgg() { + LogicalPlan plan = new LogicalPlanBuilder(scan) + .agg(ImmutableList.of(), ImmutableList.of((new Sum(scan.getOutput().get(0))).alias("sum"))) + .filter(new If(Literal.of(false), Literal.of(false), Literal.of(false))) + .project(ImmutableList.of(0)) + .build(); + + PlanChecker.from(MemoTestUtils.createConnectContext(), plan) + .applyTopDown(new PushDownFilterThroughAggregation()) + .printlnTree() + .matches( + logicalProject( + logicalFilter( + logicalAggregate( + logicalOlapScan() + ) + ) + ) + ); + } + /*- * origin plan: * project @@ -174,7 +198,8 @@ public class PushDownFilterThroughAggregationTest implements MemoPatternMatchSup logicalAggregate( logicalFilter( logicalRepeat() - ).when(filter -> filter.getConjuncts().equals(ImmutableSet.of(filterPredicateId))) + ).when(filter -> filter.getConjuncts() + .equals(ImmutableSet.of(filterPredicateId))) ) ) ); @@ -195,9 +220,9 @@ public class PushDownFilterThroughAggregationTest implements MemoPatternMatchSup .matches( logicalProject( logicalFilter( - logicalAggregate( - logicalRepeat() - ) + logicalAggregate( + logicalRepeat() + ) ).when(filter -> filter.getConjuncts().equals(ImmutableSet.of(filterPredicateId))) ) ); --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org