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
[opt](join) For left semi/anti join without mark join conjunct and without other conjucnts, stop probing after matching one row #34703
Conversation
Thank you for your contribution to Apache Doris. Since 2024-03-18, the Document has been moved to doris-website. |
run buildall |
clang-tidy review says "All clean, LGTM! 👍" |
TPC-H: Total hot run time: 41165 ms
|
TPC-DS: Total hot run time: 188696 ms
|
TeamCity be ut coverage result: |
@@ -258,7 +259,7 @@ Status ProcessHashTableProbe<JoinOpType, Parent>::do_process(HashTableType& hash | |||
need_null_map_for_probe && | |||
ignore_null > (hash_table_ctx.keys, hash_table_ctx.bucket_nums.data(), | |||
probe_index, build_index, probe_rows, _probe_indexs.data(), | |||
_probe_visited, _build_indexs.data()); | |||
_probe_visited, _build_indexs.data(), has_mark_join_conjunct); |
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.
need some regression test
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.
There are some cases already covered this code in regression-test/suites/nereids_p0/join/test_mark_join.groovy
, regression-test/suites/nereids_p0/subquery/subquery_unnesting.groovy
.
…thout other conjucnts, stop probing after matching one row
run buildall |
clang-tidy review says "All clean, LGTM! 👍" |
TeamCity be ut coverage result: |
PR approved by at least one committer and no changes requested. |
PR approved by anyone and no changes requested. |
…thout other conjucnts, stop probing after matching one row (apache#34703)
…thout other conjucnts, stop probing after matching one row (apache#34703)
…thout other conjucnts, stop probing after matching one row (#34703)
…thout other conjucnts, stop probing after matching one row (apache#34703)
Proposed changes
If one row from the probe side has one match in the hash table, the result of this row should be determined.
Further comments
If this is a relatively large or complex change, kick off the discussion at dev@doris.apache.org by explaining why you chose the solution you did and what alternatives you considered, etc...