Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
Description
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.
Attachments
Issue Links
- blocks
-
CALCITE-4052 Enable Top-down Optimization
- Open
- is related to
-
CALCITE-4319 NPE in TopDownRuleDriver#convert when convention is not enabled
- Open
- links to