forked from apache/calcite
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[CALCITE-3923] Refactor how planner rules are parameterized
Create operands using a builder interface, OperandBuilder, and deprecate methods RelOptRule.operand etc. The change is backwards compatible, in the sense that existing rule constructors are deprecated but still work. From now on, to create rules, call RelOptRule.Config.toRule() (which calls the rule's (Config) constructor). Sub-classes of ConverterRule are a little different. They don't need their own sub-class of Config. You just need to call Config.withRuleFactory to specify the constructor of the sub-class of ConverterRule. Move rule instances into holder classes such as CoreRules, MaterializedViewRules. Deprecate existing rule INSTANCE fields (to be removed in 1.25). Deprecate previous rule constructors (to be removed in 2.0). Describe how to write rules in howto and tutorial. Remove rule instances marked 'deprecated, to be removed before 1.25'. Close apache#2024
- Loading branch information
1 parent
b7aad0b
commit 998cd83
Showing
198 changed files
with
9,018 additions
and
5,503 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.