You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Stamatis Zampetakis (Jira)" <ji...@apache.org> on 2020/04/12 13:07:00 UTC

[jira] [Commented] (CALCITE-3916) Apply rules bottom up by RelSet

    [ https://issues.apache.org/jira/browse/CALCITE-3916?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17081790#comment-17081790 ] 

Stamatis Zampetakis commented on CALCITE-3916:
----------------------------------------------

Hi [~hyuan], before removing the importance from the subset rules were applied top-down (from root RelSet to leaf RelSet). Moreover space pruning can also be applied in a top-down optimizer. I don't clearly understand from the current description in this case why you want to enforce a bottom-up application and kind of inverse the previous behavior. 

> Apply rules bottom up by RelSet
> -------------------------------
>
>                 Key: CALCITE-3916
>                 URL: https://issues.apache.org/jira/browse/CALCITE-3916
>             Project: Calcite
>          Issue Type: Improvement
>          Components: core
>            Reporter: Haisheng Yuan
>            Assignee: Haisheng Yuan
>            Priority: Major
>
> Apply rules by leaf RelSet -> root RelSet order. For every RelNode in a RelSet, rule is matched and applied sequentially. No RuleQueue and DeferringRuleCall is needed anymore. This will make space pruning and rule mutual exclusivity check possible.
> Rule that use AbstractConverter as operand is an exception, to keep backward compatibility, this kind of rule still needs top-down apply.
> This should be done after CALCITE-3896.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)