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]