Skip to content
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

Optimizer pattern match based on the plan node traits #3249

Closed
Shylock-Hg opened this issue Nov 2, 2021 · 0 comments · Fixed by #3769
Closed

Optimizer pattern match based on the plan node traits #3249

Shylock-Hg opened this issue Nov 2, 2021 · 0 comments · Fixed by #3769
Assignees
Labels
type/enhancement Type: make the code neat or more efficient
Milestone

Comments

@Shylock-Hg
Copy link
Contributor

Shylock-Hg commented Nov 2, 2021

Introduction

E.G. match any sorted output node, match any storage access node etc.

e.g. limit push down pattern and transformation

limit-><kSameInputOutputRows>  --> <kSameInputOutputRows>->limit
limit-><kExplore --> limit-><kExplore + limit>

kSameInputOuptputRows is the trait means the plan node keep rows of input and output same.
kExplore is the trait means the plan node access to storage.

Why need it

Our current optimizer rule can't cover many plan.
Decouple plan node and optimize rule.
Reduce optimize rules , reduce duplicate code, improve optimizer performance.

Contents

Related work

@Shylock-Hg Shylock-Hg added type/enhancement Type: make the code neat or more efficient type/feature req Type: feature request labels Nov 2, 2021
@Shylock-Hg Shylock-Hg self-assigned this Nov 26, 2021
@Sophie-Xie Sophie-Xie removed the type/feature req Type: feature request label Jan 20, 2022
@Sophie-Xie Sophie-Xie added this to the v3.1.0 milestone Jan 26, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type/enhancement Type: make the code neat or more efficient
Projects
No open projects
Status: Done
Development

Successfully merging a pull request may close this issue.

2 participants