-
Notifications
You must be signed in to change notification settings - Fork 3.1k
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
Remove empty UPDATE
also when not wrapped with exchange
#13794
Conversation
UPDATE
also when wrapped with exchange
fe67cda
to
9f26cbc
Compare
implements Rule<TableFinishNode> | ||
{ | ||
private static final Pattern<TableFinishNode> PATTERN = tableFinish() | ||
.with(source().matching(exchange() |
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.
Remove empty UPDATE also when wrapped with exchange
i think the "wrapped with exchange" case was satisfied.
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.
I merged #13755 without resolving #13755 (comment) because I don't know whether it matters. I didn't want to have a dead code.
UPDATE
also when wrapped with exchangeUPDATE
also when not wrapped with exchange
Replace the `UPDATE` plan node with an empty `VALUES` node when the predicate is optimized to `false`.
9f26cbc
to
242bdc8
Compare
While testing the PR i've stumbled on the following edge case:
The plan node for the query above looks like:
|
@findinpath reported #13803 for this case. |
@findinpath before this PR, is there a query that fails that wouldn't fail after this PR? what is an example of a query which produces different plans before and after this PR? |
To be honest, I don't have yet a usecase for an |
Description
Replace
UPDATE
plan node with an emptyVALUES
node when the predicate is optimized tofalse
.Fix
Core query engine
Support queries like the following:
Related issues, pull requests, and links
Fixes #12422
Enhances to #13755
Documentation
(x) No documentation is needed.
( ) Sufficient documentation is included in this PR.
( ) Documentation PR is available with #prnumber.
( ) Documentation issue #issuenumber is filed, and can be handled later.
Release notes
(x) No release notes entries required.
(x) Release notes entries required with the following suggested text:
RN done via #13755