From 30196f78e253e1268a3b0cfcfedc10acabccc230 Mon Sep 17 00:00:00 2001 From: zouyunhe Date: Tue, 28 Feb 2023 20:29:22 +0800 Subject: [PATCH 1/2] support sparce function --- .../execution/GlutenClickHouseTPCHSuite.scala | 20 +++++++++++++++++++ .../expression/ExpressionMappings.scala | 2 ++ 2 files changed, 22 insertions(+) diff --git a/backends-clickhouse/src/test/scala/io/glutenproject/execution/GlutenClickHouseTPCHSuite.scala b/backends-clickhouse/src/test/scala/io/glutenproject/execution/GlutenClickHouseTPCHSuite.scala index dcb433d88e5..ce7871b778f 100644 --- a/backends-clickhouse/src/test/scala/io/glutenproject/execution/GlutenClickHouseTPCHSuite.scala +++ b/backends-clickhouse/src/test/scala/io/glutenproject/execution/GlutenClickHouseTPCHSuite.scala @@ -387,6 +387,26 @@ class GlutenClickHouseTPCHSuite extends GlutenClickHouseTPCHAbstractSuite { TestUtils.compareAnswers(result, expectedResult) } + test("test 'function space'") { + val df = spark.sql( + """ + | select + | space(l_linenumber), + | space(l_linenumber-3), + | space(l_linenumber-4), + | space(if(l_linenumber==3, NULL, 0)), + | space(l_linenumber/3.00f) + | from lineitem where l_linenumber = 3 + |""".stripMargin + ) + val result = df.collect() + assert(result(0).getString(0).equals(" ")) + assert(result(0).getString(1).equals("")) + assert(result(0).getString(2).equals("")) + assert(result(0).getString(3) == null) + assert(result(0).getString(4).equals(" ")) + } + test("test 'ISSUE https://github.com/Kyligence/ClickHouse/issues/225'") { val df = spark.sql( """ diff --git a/gluten-core/src/main/scala/io/glutenproject/expression/ExpressionMappings.scala b/gluten-core/src/main/scala/io/glutenproject/expression/ExpressionMappings.scala index f30e23d9db4..1652b22832a 100644 --- a/gluten-core/src/main/scala/io/glutenproject/expression/ExpressionMappings.scala +++ b/gluten-core/src/main/scala/io/glutenproject/expression/ExpressionMappings.scala @@ -96,6 +96,7 @@ object ExpressionMappings { final val CONCAT_WS = "concat_ws" final val REPEAT = "repeat" final val TRANSLATE = "translate" + final val SPACE = "space" // SparkSQL Math functions final val ABS = "abs" @@ -281,6 +282,7 @@ object ExpressionMappings { Sig[ConcatWs](CONCAT_WS), Sig[StringRepeat](REPEAT), Sig[StringTranslate](TRANSLATE), + Sig[StringSpace](SPACE), // SparkSQL Math functions Sig[Abs](ABS), Sig[Ceil](CEIL), From e045029975d96ea9c7e8a3f49b9ad6253ff2249e Mon Sep 17 00:00:00 2001 From: KevinyhZou Date: Tue, 18 Apr 2023 20:23:56 +0800 Subject: [PATCH 2/2] ci fix --- .../execution/GlutenClickHouseTPCHSuite.scala | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/backends-clickhouse/src/test/scala/io/glutenproject/execution/GlutenClickHouseTPCHSuite.scala b/backends-clickhouse/src/test/scala/io/glutenproject/execution/GlutenClickHouseTPCHSuite.scala index ce7871b778f..a53a192bdc4 100644 --- a/backends-clickhouse/src/test/scala/io/glutenproject/execution/GlutenClickHouseTPCHSuite.scala +++ b/backends-clickhouse/src/test/scala/io/glutenproject/execution/GlutenClickHouseTPCHSuite.scala @@ -391,20 +391,18 @@ class GlutenClickHouseTPCHSuite extends GlutenClickHouseTPCHAbstractSuite { val df = spark.sql( """ | select - | space(l_linenumber), - | space(l_linenumber-3), - | space(l_linenumber-4), - | space(if(l_linenumber==3, NULL, 0)), - | space(l_linenumber/3.00f) - | from lineitem where l_linenumber = 3 + | space(3), + | space(0), + | space(NULL), + | space(3/3.00f) + | from lineitem limit 1 |""".stripMargin ) val result = df.collect() assert(result(0).getString(0).equals(" ")) assert(result(0).getString(1).equals("")) - assert(result(0).getString(2).equals("")) - assert(result(0).getString(3) == null) - assert(result(0).getString(4).equals(" ")) + assert(result(0).getString(2) == null) + assert(result(0).getString(3).equals(" ")) } test("test 'ISSUE https://github.com/Kyligence/ClickHouse/issues/225'") {