Commit 62282b8
committed
Fix: InterleaveExec fallback to UnionExec when children partitioning diverges
After optimizer rewrites (e.g. join_selection changing join modes, or
additional EnforceDistribution passes), InterleaveExec children may no
longer have consistent hash partitioning. Instead of panicking with an
assertion error, fall back to UnionExec. Correctness is preserved; only
the interleave optimization is lost.
This fixes materialization failures on complex UNION ALL queries (like
tickers_v2) where join_selection changes a child's partitioning after
InterleaveExec was created by an earlier EnforceDistribution pass.1 parent b4dbb6a commit 62282b8
1 file changed
Lines changed: 10 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
500 | 500 | | |
501 | 501 | | |
502 | 502 | | |
503 | | - | |
504 | | - | |
505 | | - | |
506 | | - | |
507 | | - | |
508 | | - | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
509 | 513 | | |
510 | 514 | | |
511 | 515 | | |
| |||
0 commit comments