Hello Metabase driver community,
we are currently trying to upgrade the ClickHouse driver to make it work with the new date / time handling, and we have stumbled over some expectations in metabase.query-processor-test.date-bucketing-test. It seems that we can only ever get one of these two tests to pass:
- group-by-day-test with JVM time zone Pacific (lines 541 ff.)
- group-by-week-test with JVM time zone Pacific (lines 723 ff.)
Both queries return dates (Types/DATE), however test 1 expects to read midnight at UTC (line 557), whereas test 2 expects to read midnight Pacific time (line 741). A custom, third-party driver automatically falls into the else branch in both tests. Could you perhaps explain the difference in these expectations to me?
Of the officially supported drivers, only the Google driver seems to be tested the same way, as the table shows:
Driver | Group by Day (l. 541 ff.) | Group by Week (l. 721 ff.) |
---|---|---|
bigquery | + | - excluded |
druid | - abnormal | - abnormal |
+ | + | |
googleanalytics | - abnormal | - abnormal |
h2 | - excluded | - excluded |
mongo | - excluded | - excluded |
mysql | - report tz | - report tz |
oracle | - shifted | - shifted |
postgresql | - report tz | - report tz |
presto | - report tz | - report tz |
redshift | - excluded | - excluded |
snowflake | - shifted | - shifted |
sparksql | - excluded | - excluded |
sqlite | - individual | - individual |
sqlserver | - excluded | - excluded |
vertica | - excluded | + |
Thank you very much for any assistance!