diff options
author | Davies Liu <davies@databricks.com> | 2015-08-19 13:43:04 -0700 |
---|---|---|
committer | Reynold Xin <rxin@databricks.com> | 2015-08-19 13:43:20 -0700 |
commit | 1038f677be8ad0b7dac6e21e171ce1d88ccdee48 (patch) | |
tree | 1aa162fc94deb1ebee35f80bea50eada385e12c8 | |
parent | 8c0a5a2485d899e9a58d431b395d2a3f3bf4c5c1 (diff) | |
download | spark-1038f677be8ad0b7dac6e21e171ce1d88ccdee48.tar.gz spark-1038f677be8ad0b7dac6e21e171ce1d88ccdee48.tar.bz2 spark-1038f677be8ad0b7dac6e21e171ce1d88ccdee48.zip |
[SPARK-10107] [SQL] fix NPE in format_number
Author: Davies Liu <davies@databricks.com>
Closes #8305 from davies/format_number.
(cherry picked from commit e05da5cb5ea253e6372f648fc8203204f2a8df8d)
Signed-off-by: Reynold Xin <rxin@databricks.com>
-rw-r--r-- | sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/stringOperations.scala | 2 | ||||
-rw-r--r-- | sql/core/src/test/scala/org/apache/spark/sql/StringFunctionsSuite.scala | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/stringOperations.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/stringOperations.scala index 134f1aa2af..ca044d3e95 100644 --- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/stringOperations.scala +++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/stringOperations.scala @@ -1306,8 +1306,8 @@ case class FormatNumber(x: Expression, d: Expression) $df $dFormat = new $df($pattern.toString()); $lastDValue = $d; $numberFormat.applyPattern($dFormat.toPattern()); - ${ev.primitive} = UTF8String.fromString($numberFormat.format(${typeHelper(num)})); } + ${ev.primitive} = UTF8String.fromString($numberFormat.format(${typeHelper(num)})); } else { ${ev.primitive} = null; ${ev.isNull} = true; diff --git a/sql/core/src/test/scala/org/apache/spark/sql/StringFunctionsSuite.scala b/sql/core/src/test/scala/org/apache/spark/sql/StringFunctionsSuite.scala index cc95eede00..b91438baea 100644 --- a/sql/core/src/test/scala/org/apache/spark/sql/StringFunctionsSuite.scala +++ b/sql/core/src/test/scala/org/apache/spark/sql/StringFunctionsSuite.scala @@ -348,9 +348,9 @@ class StringFunctionsSuite extends QueryTest with SharedSQLContext { // it will still use the interpretProjection if projection follows by a LocalRelation, // hence we add a filter operator. // See the optimizer rule `ConvertToLocalRelation` - val df2 = Seq((5L, 4), (4L, 3), (3L, 2)).toDF("a", "b") + val df2 = Seq((5L, 4), (4L, 3), (4L, 3), (4L, 3), (3L, 2)).toDF("a", "b") checkAnswer( df2.filter("b>0").selectExpr("format_number(a, b)"), - Row("5.0000") :: Row("4.000") :: Row("3.00") :: Nil) + Row("5.0000") :: Row("4.000") :: Row("4.000") :: Row("4.000") :: Row("3.00") :: Nil) } } |