-
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
planner: fix bugs and make it more effective in outer join elimination rule. #11160
planner: fix bugs and make it more effective in outer join elimination rule. #11160
Conversation
You can change
to
Like what projection did when meet column prune and predicate push down. Also, don't use projection's schema directly. Use its expression to substitute the columns in schema instead. |
Codecov Report
@@ Coverage Diff @@
## master #11160 +/- ##
===============================================
- Coverage 81.4843% 81.276% -0.2084%
===============================================
Files 423 423
Lines 91285 90125 -1160
===============================================
- Hits 74383 73250 -1133
+ Misses 11603 11576 -27
Partials 5299 5299 |
e578d29
to
c076c0f
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.
This diff patch can also pass the current tests in planner.
659b996
to
b79feca
Compare
b79feca
to
f336f2d
Compare
PTAL. @winoros @lamxTyler |
/run-all-tests |
go.sum
Outdated
@@ -12,6 +12,7 @@ github.com/blacktear23/go-proxyprotocol v0.0.0-20180807104634-af7a81e8dd0d/go.mo | |||
github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI= | |||
github.com/chzyer/readline v0.0.0-20171208011716-f6d7a1f6fbf3/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= | |||
github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= | |||
github.com/client9/misspell v0.3.4 h1:ta993UF76GwbvJcIo3Y68y/M3WxlpEHPWIGDkJYwzJI= |
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 think it's not expected change?
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.
@lzmhhh123 you can use make tidy
to clean up the go.sum
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.
That's the result with make tidy
. ╮(╯_╰)╭
PTAL. @zz-jason |
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.
LGTM
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.
LGTM
/run-all-tests |
cherry pick to release-2.1 failed |
cherry pick to release-3.0 failed |
…origin-release-3.0
…origin-release-3.0
…origin-release-3.0
…origin-release-3.0
What problem does this PR solve?
Now, the rule outer join elimination keeps a bug as the following cases:
It can't regard the alias column as the same as origin column. After this PR, this case of outer join can be normally eliminated.
Other enhancements and bugs fix are referred to issue: #9536, #11167
What is changed and how it works?
Use
col.OrigColName
instead ofcol.ColName
. Record columns inschema
betweenLogicalAggregation
andLogicalJoin
. Substitue columns forLogicalProjection
andLogicalSelection
.Check List
Tests
Related changes