924060929 commented on code in PR #67177:
URL: https://github.com/apache/doris/pull/67177#discussion_r3877503780
##########
be/src/exec/pipeline/pipeline_fragment_context.cpp:
##########
@@ -769,13 +769,8 @@ Status
PipelineFragmentContext::_create_deferred_local_exchangers() {
sender_count, _num_instances, info.free_blocks_limit);
break;
case TLocalPartitionType::PASS_TO_ONE:
- if (_runtime_state->enable_share_hash_table_for_broadcast_join()) {
- info.shared_state->exchanger =
PassToOneExchanger::create_unique(
- sender_count, _num_instances, info.free_blocks_limit);
- } else {
- info.shared_state->exchanger =
BroadcastExchanger::create_unique(
- sender_count, _num_instances, info.free_blocks_limit);
- }
+ info.shared_state->exchanger = PassToOneExchanger::create_unique(
Review Comment:
Updated after the final rebase in 692d5ba67bf. The mixed-version fix now has
a real execution-version gate: v14 makes PASS_TO_ONE an unconditional gather,
while v13 preserves the historical share-enabled gather/share-disabled
broadcast interpretation. For new-FE/old-BE queries, FE computes one effective
compatibility mode and uses it consistently for hash-join local exchange
selection, receiver destination linking, and the query option sent to BE. The
planner snapshots both the execution version and this effective decision for
Coordinator construction. NereidsCoordinatorTest covers v13 and v14 with
sharing disabled and verifies that changing the global version after planning
does not change the query wire semantics.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]