Allison Wang created SPARK-35545:
------------------------------------
Summary: Split SubqueryExpression's children field into outer
attributes and join conditions
Key: SPARK-35545
URL: https://issues.apache.org/jira/browse/SPARK-35545
Project: Spark
Issue Type: Task
Components: SQL
Affects Versions: 3.2.0
Reporter: Allison Wang
Currently the children field of a subquery expression is used to store both
collected outer references inside the subquery plan, and also join conditions
after correlated predicates are pulled up. For example
SELECT (SELECT max(c1) FROM t1 WHERE t1.c1 = t2.c1) FROM t2
After analysis phase:
scalar-subquery [t2.c1]
After PullUpCorrelatedPredicates:
scalar-subquery [t1.c1 = t2.c1]
The references for a subquery expressions is also confusing:
override lazy val references: AttributeSet =
if (plan.resolved) super.references -- plan.outputSet else super.references
We should split this children field into outer attribute references and join
conditions.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]