From 5288b351b41c459fab7af4d687c29a83bfbc1d23 Mon Sep 17 00:00:00 2001 From: Phillip Cloud <417981+cpcloud@users.noreply.github.com> Date: Wed, 21 Dec 2022 07:53:37 -0500 Subject: [PATCH] feat(trino): implement bitwise agg support --- ibis/backends/tests/test_aggregation.py | 4 ++-- ibis/backends/trino/registry.py | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/ibis/backends/tests/test_aggregation.py b/ibis/backends/tests/test_aggregation.py index 1390e24c8da2..5e57bf19689d 100644 --- a/ibis/backends/tests/test_aggregation.py +++ b/ibis/backends/tests/test_aggregation.py @@ -450,7 +450,7 @@ def mean_and_std(v): id='bit_and', marks=[ pytest.mark.notimpl( - ["dask", "snowflake", "polars", "datafusion", "mssql", "trino"] + ["dask", "snowflake", "polars", "datafusion", "mssql"] ), pytest.mark.notyet(["impala", "pyspark"]), ], @@ -461,7 +461,7 @@ def mean_and_std(v): id='bit_or', marks=[ pytest.mark.notimpl( - ["dask", "snowflake", "polars", "datafusion", "mssql", "trino"] + ["dask", "snowflake", "polars", "datafusion", "mssql"] ), pytest.mark.notyet(["impala", "pyspark"]), ], diff --git a/ibis/backends/trino/registry.py b/ibis/backends/trino/registry.py index b3b77abb9fcc..99f6aae3c292 100644 --- a/ibis/backends/trino/registry.py +++ b/ibis/backends/trino/registry.py @@ -43,6 +43,8 @@ def _json_get_item(t, op): ops.Covariance: _covar, ops.ExtractMillisecond: unary(sa.func.millisecond), ops.Arbitrary: _arbitrary, + ops.BitAnd: reduction(sa.func.bitwise_and_agg), + ops.BitOr: reduction(sa.func.bitwise_or_agg), ops.JSONGetItem: _json_get_item, } )