[
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]