This is an automated email from the ASF dual-hosted git repository. morrysnow 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 4cb935019a2 [fix](Nereids): add whole tree rewriter when root is not CTEAnchor (#33591) (#35269) 4cb935019a2 is described below commit 4cb935019a26827487e81809ae9a10f887500da6 Author: 谢健 <jianx...@gmail.com> AuthorDate: Fri May 24 10:17:51 2024 +0800 [fix](Nereids): add whole tree rewriter when root is not CTEAnchor (#33591) (#35269) pick from master ##33591 --- .../nereids/jobs/rewrite/CostBasedRewriteJob.java | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/rewrite/CostBasedRewriteJob.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/rewrite/CostBasedRewriteJob.java index 2a7f0903b25..1ff91dfbac9 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/rewrite/CostBasedRewriteJob.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/rewrite/CostBasedRewriteJob.java @@ -91,17 +91,13 @@ public class CostBasedRewriteJob implements RewriteJob { // set subtree rewrite cache currentCtx.getStatementContext().getRewrittenCteProducer() .put(currentCtx.getCurrentTree().orElse(null), (LogicalPlan) cboCtx.getRewritePlan()); - // Do Whole tree rewrite - CascadesContext rootCtxCopy = CascadesContext.newCurrentTreeContext(rootCtx); - Rewriter.getWholeTreeRewriterWithoutCostBasedJobs(rootCtxCopy).execute(); - // Do optimize - new Optimizer(rootCtxCopy).execute(); - return rootCtxCopy.getMemo().getRoot().getLowestCostPlan( - rootCtxCopy.getCurrentJobContext().getRequiredProperties()); - } else { - new Optimizer(cboCtx).execute(); - return cboCtx.getMemo().getRoot().getLowestCostPlan( - cboCtx.getCurrentJobContext().getRequiredProperties()); } + // Do post tree rewrite + CascadesContext rootCtxCopy = CascadesContext.newCurrentTreeContext(rootCtx); + Rewriter.getWholeTreeRewriterWithoutCostBasedJobs(rootCtxCopy).execute(); + // Do optimize + new Optimizer(rootCtxCopy).execute(); + return rootCtxCopy.getMemo().getRoot().getLowestCostPlan( + rootCtxCopy.getCurrentJobContext().getRequiredProperties()); } } --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org