This is an automated email from the ASF dual-hosted git repository.

liuneng pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-gluten.git


The following commit(s) were added to refs/heads/main by this push:
     new b40989a4e [CH] Support bit_get/bit_count function (#5636)
b40989a4e is described below

commit b40989a4ea24ae9a06e9209f9e6fd772d70c65b2
Author: exmy <[email protected]>
AuthorDate: Mon Jul 1 10:30:05 2024 +0800

    [CH] Support bit_get/bit_count function (#5636)
    
    What changes were proposed in this pull request?
    How was this patch tested?
    Pass CI
---
 .../execution/GlutenClickHouseTPCHSaltNullParquetSuite.scala       | 7 +++++++
 cpp-ch/local-engine/Parser/SerializedPlanParser.h                  | 2 ++
 .../apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala    | 2 +-
 .../apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala    | 2 +-
 .../apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala    | 2 +-
 .../apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala    | 2 +-
 6 files changed, 13 insertions(+), 4 deletions(-)

diff --git 
a/backends-clickhouse/src/test/scala/org/apache/gluten/execution/GlutenClickHouseTPCHSaltNullParquetSuite.scala
 
b/backends-clickhouse/src/test/scala/org/apache/gluten/execution/GlutenClickHouseTPCHSaltNullParquetSuite.scala
index 188995f11..c0f37b086 100644
--- 
a/backends-clickhouse/src/test/scala/org/apache/gluten/execution/GlutenClickHouseTPCHSaltNullParquetSuite.scala
+++ 
b/backends-clickhouse/src/test/scala/org/apache/gluten/execution/GlutenClickHouseTPCHSaltNullParquetSuite.scala
@@ -1326,6 +1326,13 @@ class GlutenClickHouseTPCHSaltNullParquetSuite extends 
GlutenClickHouseTPCHAbstr
     }
   }
 
+  test("bit_get/bit_count") {
+    runQueryAndCompare(
+      "select bit_count(id), bit_get(id, 0), bit_get(id, 1), bit_get(id, 2), 
bit_get(id, 3) from range(100)") {
+      checkGlutenOperatorMatch[ProjectExecTransformer]
+    }
+  }
+
   test("test 'EqualNullSafe'") {
     runQueryAndCompare("select l_linenumber <=> l_orderkey, l_linenumber <=> 
null from lineitem") {
       checkGlutenOperatorMatch[ProjectExecTransformer]
diff --git a/cpp-ch/local-engine/Parser/SerializedPlanParser.h 
b/cpp-ch/local-engine/Parser/SerializedPlanParser.h
index 1785f64ee..4a4a19af3 100644
--- a/cpp-ch/local-engine/Parser/SerializedPlanParser.h
+++ b/cpp-ch/local-engine/Parser/SerializedPlanParser.h
@@ -94,6 +94,8 @@ static const std::map<std::string, std::string> 
SCALAR_FUNCTIONS
        {"bitwise_and", "bitAnd"},
        {"bitwise_or", "bitOr"},
        {"bitwise_xor", "bitXor"},
+       {"bit_get", "bitTest"},
+       {"bit_count", "bitCount"},
        {"sqrt", "sqrt"},
        {"cbrt", "cbrt"},
        {"degrees", "degrees"},
diff --git 
a/gluten-ut/spark32/src/test/scala/org/apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala
 
b/gluten-ut/spark32/src/test/scala/org/apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala
index 3048c3f9c..72185e8ce 100644
--- 
a/gluten-ut/spark32/src/test/scala/org/apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala
+++ 
b/gluten-ut/spark32/src/test/scala/org/apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala
@@ -561,7 +561,7 @@ class ClickHouseTestSettings extends BackendTestSettings {
     .exclude("SPARK-28322: IntegralDivide supports decimal type")
     .exclude("SPARK-33008: division by zero on divide-like operations returns 
incorrect result")
     .exclude("SPARK-34920: error class")
-  enableSuite[GlutenBitwiseExpressionsSuite].exclude("BitGet")
+  enableSuite[GlutenBitwiseExpressionsSuite]
   enableSuite[GlutenCastSuite]
     .exclude("null cast")
     .exclude("cast string to date")
diff --git 
a/gluten-ut/spark33/src/test/scala/org/apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala
 
b/gluten-ut/spark33/src/test/scala/org/apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala
index 769707d4e..2df825fc7 100644
--- 
a/gluten-ut/spark33/src/test/scala/org/apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala
+++ 
b/gluten-ut/spark33/src/test/scala/org/apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala
@@ -546,7 +546,7 @@ class ClickHouseTestSettings extends BackendTestSettings {
     .exclude("SPARK-36920: Support day-time intervals by ABS")
     .exclude("SPARK-36921: Support YearMonthIntervalType by div")
     .exclude("SPARK-36921: Support DayTimeIntervalType by div")
-  enableSuite[GlutenBitwiseExpressionsSuite].exclude("BitGet")
+  enableSuite[GlutenBitwiseExpressionsSuite]
   enableSuite[GlutenCastSuite]
     .exclude("null cast")
     .exclude("cast string to date")
diff --git 
a/gluten-ut/spark34/src/test/scala/org/apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala
 
b/gluten-ut/spark34/src/test/scala/org/apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala
index 268f22fe6..edca8f528 100644
--- 
a/gluten-ut/spark34/src/test/scala/org/apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala
+++ 
b/gluten-ut/spark34/src/test/scala/org/apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala
@@ -488,7 +488,7 @@ class ClickHouseTestSettings extends BackendTestSettings {
     .exclude("SPARK-36920: Support day-time intervals by ABS")
     .exclude("SPARK-36921: Support YearMonthIntervalType by div")
     .exclude("SPARK-36921: Support DayTimeIntervalType by div")
-  enableSuite[GlutenBitwiseExpressionsSuite].exclude("BitGet")
+  enableSuite[GlutenBitwiseExpressionsSuite]
   enableSuite[GlutenCastSuite]
     .exclude("null cast")
     .exclude("cast string to date")
diff --git 
a/gluten-ut/spark35/src/test/scala/org/apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala
 
b/gluten-ut/spark35/src/test/scala/org/apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala
index 268f22fe6..edca8f528 100644
--- 
a/gluten-ut/spark35/src/test/scala/org/apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala
+++ 
b/gluten-ut/spark35/src/test/scala/org/apache/gluten/utils/clickhouse/ClickHouseTestSettings.scala
@@ -488,7 +488,7 @@ class ClickHouseTestSettings extends BackendTestSettings {
     .exclude("SPARK-36920: Support day-time intervals by ABS")
     .exclude("SPARK-36921: Support YearMonthIntervalType by div")
     .exclude("SPARK-36921: Support DayTimeIntervalType by div")
-  enableSuite[GlutenBitwiseExpressionsSuite].exclude("BitGet")
+  enableSuite[GlutenBitwiseExpressionsSuite]
   enableSuite[GlutenCastSuite]
     .exclude("null cast")
     .exclude("cast string to date")


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to