Hi Makis,

+1 to Haisheng said!

Apart from HepPlanner, another class that is used often for pre/post
processing a plan is RelShuttle [1].

Best,
Stamatis

[1]
https://github.com/apache/calcite/blob/master/core/src/main/java/org/apache/calcite/rel/RelShuttle.java

On Tue, Nov 12, 2019 at 11:22 PM Serafeim (Makis) Papadias <
[email protected]> wrote:

> Thanks a lot Haisheng.
>
> I will try it and come back to you if I have some further questions. :)
>
> Best,
> Makis
>
> > On 12 Nov 2019, at 11:04 PM, Haisheng Yuan <[email protected]>
> wrote:
> >
> > Hi Makis,
> >
> > You can use HepPlanner and your customized transoformation rule to
> rewrite the optimized plan. Top-down or Bottom-up can also be specified.
> > Many systems have this kind of post processing phase.
> >
> > - Haisheng
> >
> > ------------------------------------------------------------------
> > 发件人:Serafeim (Makis) Papadias<[email protected]>
> > 日 期:2019年11月13日 05:37:37
> > 收件人:<[email protected]>
> > 主 题:Top-down pass of an optimized plan
> >
> > Dear all,
> >
> > I am performing a Volcano optimisation pass first and I receive the root
> of the optimised plan from the standard Program in [1]. Afterwards, I want
> to perform a top-down pass to the optimised plan and change it a bit by
> placing certain operators at specific points.
> >
> > Do you have any ideas on how to do this properly in Calcite?
> >
> > Thanks in advance.
> >
> > Best,
> > Makis
> >
> >
> > [1] —
> https://calcite.apache.org/apidocs/org/apache/calcite/tools/Programs.html
> <https://calcite.apache.org/apidocs/org/apache/calcite/tools/Programs.html
> >
>
>

Reply via email to