From 504f82183f416a1794541e38863228bdb63f2f7f Mon Sep 17 00:00:00 2001 From: Angerszhuuuu Date: Tue, 11 May 2021 15:40:43 +0800 Subject: [PATCH 1/3] Update Analyzer.scala --- .../scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala index 39ddbf1309510..2401d5c36ec47 100644 --- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala +++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala @@ -2353,7 +2353,7 @@ class Analyzer(override val catalogManager: CatalogManager) case q: UnaryNode if q.childrenResolved => resolveSubQueries(q, q.children) case j: Join if j.childrenResolved => - resolveSubQueries(j, Seq(j, j.left, j.right)) + resolveSubQueries(j, Seq(j.left, j.right)) case s: SupportsSubquery if s.childrenResolved => resolveSubQueries(s, s.children) } From 3aa629bfc182daed79b0e35643296221ad75726e Mon Sep 17 00:00:00 2001 From: Angerszhuuuu Date: Tue, 11 May 2021 16:26:58 +0800 Subject: [PATCH 2/3] Update Analyzer.scala --- .../scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala index 2401d5c36ec47..2a4ace95b1ad5 100644 --- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala +++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala @@ -2353,7 +2353,7 @@ class Analyzer(override val catalogManager: CatalogManager) case q: UnaryNode if q.childrenResolved => resolveSubQueries(q, q.children) case j: Join if j.childrenResolved => - resolveSubQueries(j, Seq(j.left, j.right)) + resolveSubQueries(j, j.children) case s: SupportsSubquery if s.childrenResolved => resolveSubQueries(s, s.children) } From d9cad035457298ed65a96a0a208747d975a63ef7 Mon Sep 17 00:00:00 2001 From: Angerszhuuuu Date: Tue, 11 May 2021 22:20:18 +0800 Subject: [PATCH 3/3] Update Analyzer.scala --- .../scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala index 2a4ace95b1ad5..18caa05bd556b 100644 --- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala +++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala @@ -2352,7 +2352,7 @@ class Analyzer(override val catalogManager: CatalogManager) // Only a few unary nodes (Project/Filter/Aggregate) can contain subqueries. case q: UnaryNode if q.childrenResolved => resolveSubQueries(q, q.children) - case j: Join if j.childrenResolved => + case j: Join if j.childrenResolved && j.duplicateResolved => resolveSubQueries(j, j.children) case s: SupportsSubquery if s.childrenResolved => resolveSubQueries(s, s.children)