diff options
author | Davies Liu <davies@databricks.com> | 2015-12-11 11:15:53 -0800 |
---|---|---|
committer | Davies Liu <davies.liu@gmail.com> | 2015-12-11 11:15:53 -0800 |
commit | c119a34d1e9e599e302acfda92e5de681086a19f (patch) | |
tree | 83721a3dc76d7c52fcbc61c5aee4538041c1690b /sql/core | |
parent | 518ab5101073ee35d62e33c8f7281a1e6342101e (diff) | |
download | spark-c119a34d1e9e599e302acfda92e5de681086a19f.tar.gz spark-c119a34d1e9e599e302acfda92e5de681086a19f.tar.bz2 spark-c119a34d1e9e599e302acfda92e5de681086a19f.zip |
[SPARK-12258] [SQL] passing null into ScalaUDF (follow-up)
This is a follow-up PR for #10259
Author: Davies Liu <davies@databricks.com>
Closes #10266 from davies/null_udf2.
Diffstat (limited to 'sql/core')
-rw-r--r-- | sql/core/src/test/scala/org/apache/spark/sql/DataFrameSuite.scala | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sql/core/src/test/scala/org/apache/spark/sql/DataFrameSuite.scala b/sql/core/src/test/scala/org/apache/spark/sql/DataFrameSuite.scala index 8887dc68a5..5353fefaf4 100644 --- a/sql/core/src/test/scala/org/apache/spark/sql/DataFrameSuite.scala +++ b/sql/core/src/test/scala/org/apache/spark/sql/DataFrameSuite.scala @@ -1144,9 +1144,13 @@ class DataFrameSuite extends QueryTest with SharedSQLContext { // passing null into the UDF that could handle it val boxedUDF = udf[java.lang.Integer, java.lang.Integer] { - (i: java.lang.Integer) => if (i == null) -10 else i * 2 + (i: java.lang.Integer) => if (i == null) -10 else null } - checkAnswer(df.select(boxedUDF($"age")), Row(44) :: Row(-10) :: Nil) + checkAnswer(df.select(boxedUDF($"age")), Row(null) :: Row(-10) :: Nil) + + sqlContext.udf.register("boxedUDF", + (i: java.lang.Integer) => (if (i == null) -10 else null): java.lang.Integer) + checkAnswer(sql("select boxedUDF(null), boxedUDF(-1)"), Row(-10, null) :: Nil) val primitiveUDF = udf((i: Int) => i * 2) checkAnswer(df.select(primitiveUDF($"age")), Row(44) :: Row(null) :: Nil) |