ShayanGho opened a new pull request, #25787:
URL: https://github.com/apache/datafusion/pull/25787

   ## Which issue does this PR close?
   
   Closes #25302.
   
   ## Rationale for this change
   
   A small range-partitioned input can become the reference for a much larger 
join input, forcing the larger input to adopt the smaller input's partition 
boundaries.
   
   ## What changes are included in this PR?
   
   Reject a selected reference when another input in the co-partitioned group 
has a strictly larger PlanSize. This allows the existing hash-partitioning 
fallback to apply.
   
   Equal or incomparable sizes do not trigger the new rejection.
   
   ## What is the testing strategy for this PR?
   
   Added two regression tests:
   - A smaller reference triggers hash fallback. This test failed before the 
fix.
   - Equal-sized inputs preserve the reference's range partitioning.
   
   Validation:
   - Distribution optimizer tests.
   - Extended workspace tests with the required features.
   - cargo fmt --all.
   - cargo clippy --all-targets --all-features -- -D warnings.
   - ./dev/rust_lint.sh.
   
   ## Are there any user-facing changes?
   
   Join plans can use hash repartitioning instead of adapting a larger input to 
a smaller input's existing partitioning.
   


-- 
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]

Reply via email to