-
Notifications
You must be signed in to change notification settings - Fork 5.8k
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
session, planner: add a session variable "tidb_opt_force_inline_cte" #37626
Conversation
[REVIEW NOTIFICATION] This pull request has been approved by:
To complete the pull request process, please ask the reviewers in the list to review by filling The full list of commands accepted by this bot can be found here. Reviewer can indicate their review by submitting an approval review. |
Welcome @elsa0520! |
@fixdb PTAL |
@elsa0520 The test
Rest LGTM. |
Fixed |
91646aa
to
ccf5a0b
Compare
This pr adds a new session variable, which is mainly used to control whether all CTEs in the entire session are inlined or not. The default value is false, which means that inline cte is not enabled by default. (But if the user directly specifies the merge hint, it can still be turned on) If the variable is set to true, it means that all CTEs for this session try to enable inlining. Fixed pingcap#36514
ccf5a0b
to
68de505
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we add test cases where
- non-recursive CTE definition inside another non-recursive CTE
- defining non-recursive CTE inside recursive CTE
- defining recursive inside non-recursive CTE
Done |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1
/merge |
This pull request has been accepted and is ready to merge. Commit hash: 418e3c1
|
TiDB MergeCI notify🔴 Bad News! [1] CI still failing after this pr merged.
|
What problem does this PR solve?
This pr adds a new session variable,
which is mainly used to control whether all CTEs in the entire session are inlined or not.
The default value is false, which means that inline cte is not enabled by default.
(But if the user directly specifies the merge hint, it can still be turned on)
If the variable is set to true, it means that all CTEs for this session try to enable inlining.
Issue Number: close #36514
Problem Summary:
What is changed and how it works?
Check List
Tests
Side effects
Documentation
Release note
Please refer to Release Notes Language Style Guide to write a quality release note.