Github user dilipbiswal commented on a diff in the pull request:
https://github.com/apache/spark/pull/22544#discussion_r220253485
--- Diff:
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/TypeCoercion.scala
---
@@ -971,9 +971,36 @@ object TypeCoercion {
case (ArrayType(fromType, true), ArrayType(toType: DataType,
false)) => null
case (ArrayType(fromType, false), ArrayType(toType: DataType,
false))
- if !Cast.forceNullable(fromType, toType) =>
+ if !Cast.forceNullable(fromType, toType) =>
implicitCast(fromType, toType).map(ArrayType(_, false)).orNull
+ // Implicit cast between Map types.
+ // Follows the same semantics of implicit casting between two
array types.
+ // Refer to documentation above.
+ case (MapType(fromKeyType, fromValueType, fn), MapType(toKeyType,
toValueType, true)) =>
+ val newFromType = implicitCast(fromKeyType, toKeyType).orNull
--- End diff --
@viirya Will change.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]