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
[GLUTEN-12597][CORE] Migrate nested loop joins from CrossRel to NestedLoopJoinRel (Substrait 0.98)
Substrait 0.98 splits Gluten's overloaded CrossRel (which carried both
`expression` and `type`) into a pure-cartesian CrossRel plus a new
NestedLoopJoinRel (expression=4, type=5) with a paired JoinType enum. This
increment of the proto rebase adopts that split across the vendored proto, the
JVM producer, and both native consumers in lockstep.
The NestedLoopJoinRel.JoinType enum reorders the anti/semi/single values
relative to the old CrossRel.JoinType fork, but Gluten only ever emits and
consumes INNER/OUTER/LEFT/LEFT_SEMI, whose proto numbers (1/2/3/5) are identical
in both, so the split is semantically neutral for Gluten's code paths.
The new rel is parked at a temporary Rel-oneof field number; the final oneof
reconciliation increment relocates it to the official nested_loop_join = 18.
Field numbers are codegen-transparent for Gluten's coupled build (single proto
source, transient plans, producer + both consumers regenerate and ship
together).
Part of #12597.
Generated-by: Claude Code (Claude Opus 4.8)
0 commit comments