-
Notifications
You must be signed in to change notification settings - Fork 5.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Call For Participation: add rules for cascades optimizer #13709
Comments
I highly recommend new contributors try rules like 'Limit PushDown' and 'TopN PushDown' above. They are truly easy to implement and can help you get familiar with the cascades framework. |
let me fix |
I'd like to take |
@francis0407 Do you have some other recommendations for new contributors? Thank you very much! |
You can try this transformation rule: tidb/planner/core/rule_predicate_push_down.go Line 564 in d438c86
The logic of this rule is simple, I think. You only need to implement this rule and add tests in If you encounter any difficulties, you can ask us in slack. @jiangyuzhao |
@francis0407 OK. Thank you very much. I will try to implement |
@jiangyuzhao Slack is a powerful software for online communication. You may need to sign up at first. Then check this link: https://pingcap.com/tidbslack/. We can discuss issues about cascades optimizer in the channel |
@francis0407 Thanks for your explanation~ |
Let me fix |
Let me fix |
Hi guys, |
Workflow for Adding a Transformation RuleHere is the basic workflow for adding a Transformation rule in cascades optimizer. Add Optimization Rules for Cascades Optimizer(in Chinese only) may provide more information. Implement a Transformation Rule
Add unit test for a Transformatino Rule
|
Let me fix |
Hi, @edytagarbarz |
@francis0407 definitely! |
@francis0407 I'm sorry for being busy this week. I will finish the task soon! |
@jiangyuzhao Don't worry, enjoy the world of open source. |
Let me fix |
Hi @edytagarbarz , can I do this if you haven't started yet? |
@gauss1314 |
The task |
Hi, I'm willing to take the However, some of the backgrounds are rather scarce. Can you provide some background? |
In https://github.com/pingcap/tidb/blob/master/docs/design/2018-08-29-new-planner.md, we proposed a new planner based on cascades.
We create this issue to track the dev progress of the new planner.
If you're interested in this project, feel free to join the discussion by entering the slack channel
#sig-planner
in the tidbcommunity slack workspace. Or just pick some TODO issues listed in this tracking issue using the following working flow:You can find the basic workflow for adding a transformation rule here.
The issues below with [easy] tag are highly recommended for new contributors.
Issues
rule_predicate_push_down.go
):attch2Task
method of TopN and Limit):rule_eliminate_projection.go
):rule_topn_push_down.go
):rule_topn_push_down.go
):rule_decorrelate.go
):rule_max_min_eliminate.go
):rule_aggregation_elimination.go
):rule_aggregation_push_down.go
):rule_join_elimination.go
) @SeaRise planner/cascades: add transformation rule EliminateOuterJoinBelowAggregation #14465PreparePossibleProperty
planner/cascades: implement PreparePossibleProperties in cascades planner #13910only_full_group_by
checking than TiDB current does and for further optimizations. [hard]The text was updated successfully, but these errors were encountered: