You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Duplicate channels can crash range shuffle routing #8245
Python range shuffle divides its key range by the channel count but routes through a deduplicated receiver list. The planner creates every sender-receiver pair, so multiple senders can make a valid key produce an out-of-bounds receiver index.
Configuration
Before
After
Two senders, two receivers, range -10 to 9, key 9
Four channels give bucket 3 and IndexError
Two receivers give bucket 1, matching the JVM
Reproduced on upstream main 289b70945bdd8ec5b4a10016a1ecebe898d931ef by executing LinkConfig.toPartitioning, serializing its result, and passing it to Python OutputManager. Both single-sender controls pass; all four cases with two or three senders and one or two receivers fail before the change.
Proposed Solution or Design
Divide the key range by the unique receiver count already used for routing. Add an OutputManager regression with the planner's complete sender-receiver topology, including boundary and out-of-range values.
Activity
carloea2 commentedon Sep 5, 2026
/take