Repository: spark Updated Branches: refs/heads/master bb873754b -> 611dbce4b
[SPARK-12555][SQL] Result should not be corrupted after input columns are reordered This PR add test case described in SPARK-12555 to validate that correct data is returned when input data is reordered and to avoid future regressions. Author: Luciano Resende <lrese...@apache.org> Closes #11623 from lresende/SPARK-12555. Project: http://git-wip-us.apache.org/repos/asf/spark/repo Commit: http://git-wip-us.apache.org/repos/asf/spark/commit/611dbce4 Tree: http://git-wip-us.apache.org/repos/asf/spark/tree/611dbce4 Diff: http://git-wip-us.apache.org/repos/asf/spark/diff/611dbce4 Branch: refs/heads/master Commit: 611dbce4bdd6f34ac1fa67d8dfa3d407600a0237 Parents: bb87375 Author: Luciano Resende <lrese...@apache.org> Authored: Thu Apr 7 08:35:00 2016 +0800 Committer: Wenchen Fan <wenc...@databricks.com> Committed: Thu Apr 7 08:35:00 2016 +0800 ---------------------------------------------------------------------- .../spark/sql/DatasetAggregatorSuite.scala | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/spark/blob/611dbce4/sql/core/src/test/scala/org/apache/spark/sql/DatasetAggregatorSuite.scala ---------------------------------------------------------------------- diff --git a/sql/core/src/test/scala/org/apache/spark/sql/DatasetAggregatorSuite.scala b/sql/core/src/test/scala/org/apache/spark/sql/DatasetAggregatorSuite.scala index 5430aff..08b3389 100644 --- a/sql/core/src/test/scala/org/apache/spark/sql/DatasetAggregatorSuite.scala +++ b/sql/core/src/test/scala/org/apache/spark/sql/DatasetAggregatorSuite.scala @@ -84,6 +84,16 @@ object ComplexBufferAgg extends Aggregator[AggData, (Int, AggData), Int] { (b1._1 + b2._1, b1._2) } +object NameAgg extends Aggregator[AggData, String, String] { + def zero: String = "" + + def reduce(b: String, a: AggData): String = a.b + b + + def merge(b1: String, b2: String): String = b1 + b2 + + def finish(r: String): String = r +} + class DatasetAggregatorSuite extends QueryTest with SharedSQLContext { import testImplicits._ @@ -176,4 +186,13 @@ class DatasetAggregatorSuite extends QueryTest with SharedSQLContext { typed.avg(_._2), typed.count(_._2), typed.sum(_._2), typed.sumLong(_._2)), ("a", 2.0, 2L, 4.0, 4L), ("b", 3.0, 1L, 3.0, 3L)) } + + test("SPARK-12555 - result should not be corrupted after input columns are reordered") { + val ds = sql("SELECT 'Some String' AS b, 1279869254 AS a").as[AggData] + + checkDataset( + ds.groupByKey(_.a).agg(NameAgg.toColumn), + (1279869254, "Some String")) + } + } --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@spark.apache.org For additional commands, e-mail: commits-h...@spark.apache.org