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

   ## Which issue does this PR close?
   - Part of #13431
   
   ## Rationale for this change
   Continuing the work after #23988 and #24056. `BitwiseSortMergeJoinStream` 
(filtered semi/anti/mark joins) buffers the inner key group and spills it under 
memory pressure, but existing tests only cover the successful spill path:
   - when the memory pool is exhausted and disk spilling is disabled, the error 
path had no coverage
   - the multi-spill slice retention regression test only asserted the semi 
join outcome; a dropped slice resurrects the anti row and flips mark to false, 
which row counts alone cannot catch
   - no spill test exercised `NullEqualsNull`, so NULL-key group boundary 
detection through the spill path was untested
   
   ## What changes are included in this PR?
   - new `bitwise_filtered_no_spill`: all six semi/anti/mark join types must 
surface a clear "Disk spilling disabled" error (not spill or panic) when the 
pool is exhausted with the `DiskManager` disabled
   - extend `bitwise_multi_spill_inner_key_group` over `LeftAnti`/`LeftMark`, 
asserting the mark column value
   - new `bitwise_spill_null_key_group`: under `NullEqualsNull`, a NULL-key 
group spanning a batch boundary must spill as one group with one spill file and 
match a NULL-key outer row
   - extract shared setup of `bitwise_spill_with_filter` into a fixture
   
   ## Are these changes tested?
   test only change and it can be tested via:
   
   ```
   cargo test -p datafusion-physical-plan --lib -- 
sort_merge_join::tests::bitwise
   ```
   
   ## Are there any user-facing changes?
   no test only change
   


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