alexr17 opened a new pull request, #11934: URL: https://github.com/apache/gluten/pull/11934
## What changes are proposed in this pull request? `GenerateExecTransformer` can rewrite exploded output attributes to post-project aliases while preserving the original `exprId`. A downstream `GetStructField` may still refer to the original attribute name, so name-based binding fails even though the matching input attribute is present by `exprId`. This patch keeps the existing name-based binding path, then falls back to `exprId` matching when the root attribute name is no longer present. It also hardens nested struct ordinal resolution so partially matched paths do not return stale ordinals. ## How was this patch tested? Added regression coverage in `MiscOperatorSuite` for: - struct field projection after `LATERAL VIEW EXPLODE` - struct field filtering after `LATERAL VIEW EXPLODE` - nested struct field grouping after `explode_outer` Ran: - `mvn -Pbackends-velox -pl backends-velox spotless:check -DspotlessFiles=backends-velox/src/test/scala/org/apache/gluten/execution/MiscOperatorSuite.scala` ## Was this patch authored or co-authored using generative AI tooling? Yes, issue was reproed locally and fix was partially generated with AI -- 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]
