Kontinuation opened a new pull request, #677:
URL: https://github.com/apache/sedona-db/pull/677

   ## Summary
   
   - Introduce `ProbeShuffleExec`, a thin wrapper around `RepartitionExec` that 
is opaque to DataFusion's `EnforceDistribution` / `EnforceSorting` optimizer 
passes, preventing them from stripping the round-robin repartitioning that the 
spatial join planner inserts on the probe side.
   - Move the `ProbeShuffleExec` presence assertion into 
`run_spatial_join_query` so it runs on every optimized spatial join integration 
test (~174 cases) rather than only in standalone tests.
   
   ## Problem
   
   DataFusion's optimizer passes recognize `RepartitionExec` nodes and can 
strip or replace them. When the spatial join planner inserts a 
`RepartitionExec(RoundRobinBatch)` on the probe side to ensure proper 
parallelism, these optimizer passes could remove it, causing the probe side to 
lose its intended repartitioning.
   
   ## Solution
   
   `ProbeShuffleExec` wraps a `RepartitionExec` internally but presents itself 
as a different `ExecutionPlan` type. Since the optimizer passes only look for 
`RepartitionExec` nodes by type, they leave `ProbeShuffleExec` untouched. The 
wrapper delegates all `ExecutionPlan` trait methods to the inner 
`RepartitionExec`.


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

Reply via email to