You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by mi...@apache.org on 2024/02/01 16:43:12 UTC
(superset) 05/09: fix(pinot): typo in the name for epoch_ms_to_dttm (#26906)
This is an automated email from the ASF dual-hosted git repository.
michaelsmolina pushed a commit to branch 3.0
in repository https://gitbox.apache.org/repos/asf/superset.git
commit af079fb13b8f1ee84f20cc2d3cb30f060265028b
Author: Erich <13...@users.noreply.github.com>
AuthorDate: Tue Jan 30 23:49:55 2024 -0500
fix(pinot): typo in the name for epoch_ms_to_dttm (#26906)
(cherry picked from commit 484901f4832b64845931f728db3e367f7f7c562c)
---
superset/db_engine_specs/pinot.py | 2 +-
tests/integration_tests/db_engine_specs/pinot_tests.py | 14 ++++++++++++++
2 files changed, 15 insertions(+), 1 deletion(-)
diff --git a/superset/db_engine_specs/pinot.py b/superset/db_engine_specs/pinot.py
index 2cafd5ecb0..0f53cfa77b 100644
--- a/superset/db_engine_specs/pinot.py
+++ b/superset/db_engine_specs/pinot.py
@@ -62,7 +62,7 @@ class PinotEngineSpec(BaseEngineSpec):
)
@classmethod
- def epoch_ms_to_dttm_(cls) -> str:
+ def epoch_ms_to_dttm(cls) -> str:
return (
"DATETIMECONVERT({col}, '1:MILLISECONDS:EPOCH', "
+ "'1:MILLISECONDS:EPOCH', '1:MILLISECONDS')"
diff --git a/tests/integration_tests/db_engine_specs/pinot_tests.py b/tests/integration_tests/db_engine_specs/pinot_tests.py
index 3998d20940..c8deef6fc4 100755
--- a/tests/integration_tests/db_engine_specs/pinot_tests.py
+++ b/tests/integration_tests/db_engine_specs/pinot_tests.py
@@ -84,6 +84,20 @@ class TestPinotDbEngineSpec(TestDbEngineSpec):
expected,
)
+ def test_pinot_time_expression_millisec_one_1m_grain(self):
+ col = column("tstamp")
+ expr = PinotEngineSpec.get_timestamp_expr(col, "epoch_ms", "P1M")
+ result = str(expr.compile())
+ expected = (
+ "CAST(DATE_TRUNC('month', CAST("
+ + "DATETIMECONVERT(tstamp, '1:MILLISECONDS:EPOCH', "
+ + "'1:MILLISECONDS:EPOCH', '1:MILLISECONDS') AS TIMESTAMP)) AS TIMESTAMP)"
+ )
+ self.assertEqual(
+ result,
+ expected,
+ )
+
def test_invalid_get_time_expression_arguments(self):
with self.assertRaises(NotImplementedError):
PinotEngineSpec.get_timestamp_expr(column("tstamp"), None, "P0.25Y")