Date Bucketing Test

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:

  1. group-by-day-test with JVM time zone Pacific (lines 541 ff.)
  2. 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
google + +
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!