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

Planner to move to Operator model #11626

Closed
13 of 14 tasks
systay opened this issue Nov 2, 2022 · 1 comment
Closed
13 of 14 tasks

Planner to move to Operator model #11626

systay opened this issue Nov 2, 2022 · 1 comment
Assignees
Labels
Type: Enhancement Logical improvement (somewhere between a bug and feature) Type: RFC Request For Comment

Comments

@systay
Copy link
Collaborator

systay commented Nov 2, 2022

Internal Refactoring

Since forever, we have had the logicalPlan interface that is used during planning. This served us well on the V3 planner.
In the gen4 work, we introduced the Operator interface that we use when doing the join ordering and route merging.

Once that is done, we transform the operator tree to a logical plan tree to do the grouping/order by/limit planning.

Unfortunately, this means that in some situations we cannot decide early on if we can merge a route with another or not. For example when using derived tables and UNION, if the inner queries are using aggregation, we can't make a good decision during join ordering, and later when we do the aggregation planning, it's too late to merge the routes, because we are by then on logical plans instead.

What I want to do is:

@frouioui frouioui moved this to In Progress in v17.0.0 Apr 25, 2023
@frouioui frouioui added this to v17.0.0 Apr 25, 2023
@frouioui frouioui added this to v18.0.0 Jun 30, 2023
@frouioui frouioui moved this to In Progress in v18.0.0 Jun 30, 2023
@frouioui frouioui removed this from v17.0.0 Jun 30, 2023
@harshit-gangal harshit-gangal self-assigned this Aug 30, 2023
@harshit-gangal harshit-gangal changed the title Clean up planning data structures Planner to move to Operator model Sep 19, 2023
@harshit-gangal harshit-gangal added Type: Enhancement Logical improvement (somewhere between a bug and feature) and removed Type: Internal Cleanup labels Sep 19, 2023
@harshit-gangal
Copy link
Member

Closing this as new operator model is used to plan all the queries.
transform to engine primitive is very lean now.

@github-project-automation github-project-automation bot moved this from In Progress to Done in v18.0.0 Feb 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Enhancement Logical improvement (somewhere between a bug and feature) Type: RFC Request For Comment
Projects
Status: Done
Development

No branches or pull requests

2 participants