Repository: spark Updated Branches: refs/heads/master dff73bfa5 -> 8228b0630
[SPARK-16436][SQL] checkEvaluation should support NaN ## What changes were proposed in this pull request? This small patch modifies ExpressionEvalHelper. checkEvaluation to support comparing NaN values for floating point comparisons. ## How was this patch tested? This is a test harness change. Author: petermaxlee <[email protected]> Closes #14103 from petermaxlee/SPARK-16436. Project: http://git-wip-us.apache.org/repos/asf/spark/repo Commit: http://git-wip-us.apache.org/repos/asf/spark/commit/8228b063 Tree: http://git-wip-us.apache.org/repos/asf/spark/tree/8228b063 Diff: http://git-wip-us.apache.org/repos/asf/spark/diff/8228b063 Branch: refs/heads/master Commit: 8228b06303718b202be60b830df7dfddd97057b1 Parents: dff73bf Author: petermaxlee <[email protected]> Authored: Fri Jul 8 16:49:02 2016 +0800 Committer: Wenchen Fan <[email protected]> Committed: Fri Jul 8 16:49:02 2016 +0800 ---------------------------------------------------------------------- .../spark/sql/catalyst/expressions/ExpressionEvalHelper.scala | 4 ++++ 1 file changed, 4 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/spark/blob/8228b063/sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/expressions/ExpressionEvalHelper.scala ---------------------------------------------------------------------- diff --git a/sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/expressions/ExpressionEvalHelper.scala b/sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/expressions/ExpressionEvalHelper.scala index e58a0df..58e9d6f 100644 --- a/sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/expressions/ExpressionEvalHelper.scala +++ b/sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/expressions/ExpressionEvalHelper.scala @@ -63,6 +63,10 @@ trait ExpressionEvalHelper extends GeneratorDrivenPropertyChecks { expected.asInstanceOf[Spread[Double]].isWithin(result) case (result: MapData, expected: MapData) => result.keyArray() == expected.keyArray() && result.valueArray() == expected.valueArray() + case (result: Double, expected: Double) => + if (expected.isNaN) result.isNaN else expected == result + case (result: Float, expected: Float) => + if (expected.isNaN) result.isNaN else expected == result case _ => result == expected } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
