-
- Downloads
[SPARK-19910][SQL] `stack` should not reject NULL values due to type mismatch
## What changes were proposed in this pull request? Since `stack` function generates a table with nullable columns, it should allow mixed null values. ```scala scala> sql("select stack(3, 1, 2, 3)").printSchema root |-- col0: integer (nullable = true) scala> sql("select stack(3, 1, 2, null)").printSchema org.apache.spark.sql.AnalysisException: cannot resolve 'stack(3, 1, 2, NULL)' due to data type mismatch: Argument 1 (IntegerType) != Argument 3 (NullType); line 1 pos 7; ``` ## How was this patch tested? Pass the Jenkins with a new test case. Author: Dongjoon Hyun <dongjoon@apache.org> Closes #17251 from dongjoon-hyun/SPARK-19910.
Showing
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/TypeCoercion.scala 17 additions, 0 deletions...org/apache/spark/sql/catalyst/analysis/TypeCoercion.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/generators.scala 19 additions, 0 deletions...rg/apache/spark/sql/catalyst/expressions/generators.scala
- sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/analysis/TypeCoercionSuite.scala 57 additions, 0 deletions...pache/spark/sql/catalyst/analysis/TypeCoercionSuite.scala
- sql/core/src/test/scala/org/apache/spark/sql/GeneratorFunctionSuite.scala 4 additions, 0 deletions...t/scala/org/apache/spark/sql/GeneratorFunctionSuite.scala
Please register or sign in to comment