Is your feature request related to a problem? Please describe.
Native shuffled hash joins still restrict residual conditions to inner joins, although the shared native hash join implementation now supports condition-aware matching for additional join types.
The same support is needed when sort-merge joins are converted to shuffled hash joins.
Describe the solution you'd like
- Remove the inner-only condition restriction from native shuffled hash join planning.
- Reuse the shared native hash join implementation for residual-condition evaluation.
- Apply common condition validation to direct shuffled hash joins and forced sort-merge-to-shuffled-hash conversions.
- Return no output ordering on Spark 3.1 for build-preserving join orientations that Spark's inherited ordering implementation cannot handle.
- Add Spark regression tests for join semantics, projections, configuration, and output ordering.
Is your feature request related to a problem? Please describe.
Native shuffled hash joins still restrict residual conditions to inner joins, although the shared native hash join implementation now supports condition-aware matching for additional join types.
The same support is needed when sort-merge joins are converted to shuffled hash joins.
Describe the solution you'd like