[
https://issues.apache.org/jira/browse/SPARK-59600?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated SPARK-59600:
-----------------------------------
Labels: pull-request-available (was: )
> Bind the resolved function owner across star preprocessing and function
> resolution
> ----------------------------------------------------------------------------------
>
> Key: SPARK-59600
> URL: https://issues.apache.org/jira/browse/SPARK-59600
> Project: Spark
> Issue Type: Sub-task
> Components: SQL
> Affects Versions: 4.4.0
> Reporter: Ganesha S
> Priority: Major
> Labels: pull-request-available
>
> Follow-up to: SPARK-59144
> Star-expansion preprocessing and `ResolveFunctions` each resolve the function
> owner independently against the SQL PATH, the same owner-blind two-phase
> pattern, the existing `count(*)→count(1)` rewrite, and the `count(tbl.*)`
> guard already use. If a visible temporary or persistent shadow is added or
> dropped between the two phases, they can disagree: preprocessing expands a
> direct star for the selected shadow, then ResolveFunctions falls through to
> the stock SQL/JSON builtin, which no longer sees a Star and skips
> `INVALID_USAGE_OF_STAR_OR_REGEX` (or the reverse). This is only reachable
> under concurrent external DDL during a single query's analysis and is not
> JSON-specific, but SPARK-59144 extends its surface to the routed SQL/JSON
> functions.
> Fix: resolve the owner once and bind the selected candidate (or preserve the
> direct-star provenance) so preprocessing and resolution consume a single PATH
> decision; if the bound owner disappears before resolution, fail that
> candidate rather than silently falling through to the builtin. Apply
> consistently in the fixed-point and single-pass analyzers, and add
> deterministic owner-change interleaving coverage for both.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]