aboutsummaryrefslogtreecommitdiff
path: root/sql/core
diff options
context:
space:
mode:
authorDavies Liu <davies@databricks.com>2015-12-11 11:15:53 -0800
committerDavies Liu <davies.liu@gmail.com>2015-12-11 11:15:53 -0800
commitc119a34d1e9e599e302acfda92e5de681086a19f (patch)
tree83721a3dc76d7c52fcbc61c5aee4538041c1690b /sql/core
parent518ab5101073ee35d62e33c8f7281a1e6342101e (diff)
downloadspark-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.scala8
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)