Skip to content

Commit 6bf8c17

Browse files
committed
Revert "[SPARK-54595][SQL] Keep existing behavior of MERGE INTO without SCHEMA EVOLUTION clause"
This reverts commit 74b6a93.
1 parent 59e7b3c commit 6bf8c17

File tree

4 files changed

+783
-708
lines changed

4 files changed

+783
-708
lines changed

sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1736,8 +1736,9 @@ class Analyzer(
17361736
Assignment(key, sourceAttr)
17371737
}
17381738
} else {
1739-
targetTable.output.map { attr =>
1740-
Assignment(attr, UnresolvedAttribute(Seq(attr.name)))
1739+
sourceTable.output.flatMap { sourceAttr =>
1740+
findAttrInTarget(sourceAttr.name).map(
1741+
targetAttr => Assignment(targetAttr, sourceAttr))
17411742
}
17421743
}
17431744
UpdateAction(
@@ -1774,8 +1775,9 @@ class Analyzer(
17741775
Assignment(key, sourceAttr)
17751776
}
17761777
} else {
1777-
targetTable.output.map { attr =>
1778-
Assignment(attr, UnresolvedAttribute(Seq(attr.name)))
1778+
sourceTable.output.flatMap { sourceAttr =>
1779+
findAttrInTarget(sourceAttr.name).map(
1780+
targetAttr => Assignment(targetAttr, sourceAttr))
17791781
}
17801782
}
17811783
InsertAction(

sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/ResolveRowLevelCommandAssignments.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ object ResolveRowLevelCommandAssignments extends Rule[LogicalPlan] {
5353
case m: MergeIntoTable if !m.skipSchemaResolution && m.resolved && m.rewritable && !m.aligned &&
5454
!m.needSchemaEvolution =>
5555
validateStoreAssignmentPolicy()
56-
val coerceNestedTypes = SQLConf.get.coerceMergeNestedTypes && m.withSchemaEvolution
56+
val coerceNestedTypes = SQLConf.get.coerceMergeNestedTypes
5757
m.copy(
5858
targetTable = cleanAttrMetadata(m.targetTable),
5959
matchedActions = alignActions(m.targetTable.output, m.matchedActions,

0 commit comments

Comments
 (0)