Github user eyalfa commented on the issue:
https://github.com/apache/spark/pull/14444
@cloud-fan, @hvanhovell,
test failures assured my concerns about not using the names of unresolved
named expressions, it turns out there are cases where the name is available for
unresolved expressions and other cases when it becomes avialable only once the
expression is resolved (Star, UnresolvedAlias). by protecting from the second
kind we 'killed' the first case.
I've pushed a fix that seems to be working but introducing some complexity:
1. CreateStruct.apply doesn't call name on unresolved expressions, instead
it plants a marker as the attribute's name.
2. as a result from #1, we introduce unresolved CreateNamedStruct trees,
notice that there's a 'limbo' state where the values are already resolved but
the attribute names aren't.
3. introduced a new Analyzer rule that identifies NamedStructs with
unresolved attribute names attached to already resolved values and replaces
them with the actual attribute name.
please review and let me know what do you think of it.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]