[ 
https://issues.apache.org/jira/browse/SPARK-60692?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated SPARK-60692:
-----------------------------------
    Labels: pull-request-available  (was: )

> Support lookup-side projections and filters, semi/anti joins and range 
> predicates in external lookup join
> ---------------------------------------------------------------------------------------------------------
>
>                 Key: SPARK-60692
>                 URL: https://issues.apache.org/jira/browse/SPARK-60692
>             Project: Spark
>          Issue Type: Task
>          Components: SQL, Structured Streaming
>    Affects Versions: 4.4.0
>            Reporter: Jungtaek Lim
>            Priority: Major
>              Labels: pull-request-available
>
> Part of SPARK-60031.
> In scope:
> - Lookup sides with projections and filters. The lookup side is also found 
> through projections and filters, so views and SQL subqueries such as `(SELECT 
> ... FROM t) s` run:
>   - projections and filters that remain after optimization run as lookup-side 
> stages;
>   - ones that optimization folds away, such as `WHERE 1 = 0`, run without 
> calling the connector;
>   - a projection or filter that contains a Python UDF, an external UDF or a 
> subquery fails with `LOOKUP_PLAN` when the DataFrame is built.
> - CHAR padding, and the CHAR/VARCHAR read-side checks under standard 
> semantics, of a lookup-only table run as a lookup-side projection.
> - Filters directly over the table are pushed to the scan builder.
> - Required columns are pruned by a standalone rule, 
> `PruneExternalLookupJoinColumns`. `ColumnPruning` is not changed.
> - Left semi and left anti joins.
> - `<=>` (null-safe) and `<`, `<=`, `>`, `>=` are offered as lookup 
> candidates; unselected candidates stay residual.
> Out of scope:
> - Cache.
> - Pushing stream-side filters and join-condition conjuncts through the join.



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to