Date filter do not respect report timezone in Redshift data source

Hi All,

I have recently upgraded Metabase from v0.43.3 to v0.47.11. After upgrading everything is working expect the date filter when connecting to Redshift data source.

When I am selecting today in the date filter, it displays records for yesterday. I want this to be today's date only.


  • I am supposed to get everything in Asia/Kolkata timezone

  • So I my report timezone is Asia/Kolkata

  • Metabase is running on kubernetes pod (Linux OS) which is build from Metabase docker image. The server timezone also set to IST (Asia/Kolakata).

Screenshot 2024-01-19 at 3.41.27 AM

  • I am using Java 11. The java time zone also is Asia/Kolkata

  • Metabase is deployed using Postgres as the Metadata DB. The timezone of this database is Asia/Kolkata

Screenshot 2024-01-19 at 3.45.19 AM

  • The Redshift database connected to the question is having timezone UTC

Screenshot 2024-01-19 at 3.50.20 AM

  • This issue is not happening for Postgres. Also If I am changing the database type from Amazon Redshift to Postgres, this issue is not happening

Please help on this urgently since almost all of the dashboards are impacted due to this.

PFB Diagnostic Info:

{
"browser-info": {
"language": "en-US",
"platform": "MacIntel",
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
"vendor": "Google Inc."
},
"system-info": {
"file.encoding": "UTF-8",
"java.runtime.name": "OpenJDK Runtime Environment",
"java.runtime.version": "11.0.21+9",
"java.vendor": "Eclipse Adoptium",
"java.vendor.url": "https://adoptium.net/",
"java.version": "11.0.21",
"java.vm.name": "OpenJDK 64-Bit Server VM",
"java.vm.version": "11.0.21+9",
"os.name": "Linux",
"os.version": "5.10.173-154.642.amzn2.x86_64",
"user.language": "en",
"user.timezone": "Asia/Kolkata"
},
"metabase-info": {
"databases": [
"postgres",
"redshift"
],
"hosting-env": "unknown",
"application-database": "postgres",
"application-database-details": {
"database": {
"name": "PostgreSQL",
"version": "13.10"
},
"jdbc-driver": {
"name": "PostgreSQL JDBC Driver",
"version": "42.5.4"
}
},
"run-mode": "prod",
"version": {
"date": "2024-01-05",
"tag": "v0.47.11",
"branch": "?",
"hash": "51935b1"
},
"settings": {
"report-timezone": "Asia/Kolkata"
}
}
}

@Luiggi Can you check this once. Thanks in advance.

Hello,

I am experiencing the same issue.
image

In this scenario (which is already odd), the generated SQL is:
select timestamp with time zone '2024-03-20 00:00:00.000+11:00'

When I run that directly I get different results:
image

The unpredictability is a killer.

Diag data:

{
  "browser-info": {
    "language": "en-AU",
    "platform": "Win32",
    "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36",
    "vendor": "Google Inc."
  },
  "system-info": {
    "file.encoding": "UTF-8",
    "java.runtime.name": "OpenJDK Runtime Environment",
    "java.runtime.version": "11.0.22+7",
    "java.vendor": "Eclipse Adoptium",
    "java.vendor.url": "https://adoptium.net/",
    "java.version": "11.0.22",
    "java.vm.name": "OpenJDK 64-Bit Server VM",
    "java.vm.version": "11.0.22+7",
    "os.name": "Linux",
    "os.version": "6.1.61-85.141.amzn2023.x86_64",
    "user.language": "en",
    "user.timezone": "GMT"
  },
  "metabase-info": {
    "databases": [
      "redshift"
    ],
    "hosting-env": "unknown",
    "application-database": "postgres",
    "application-database-details": {
      "database": {
        "name": "PostgreSQL",
        "version": "15.5"
      },
      "jdbc-driver": {
        "name": "PostgreSQL JDBC Driver",
        "version": "42.7.2"
      }
    },
    "run-mode": "prod",
    "version": {
      "date": "2024-03-14",
      "tag": "v0.49.0",
      "hash": "46c668b"
    },
    "settings": {
      "report-timezone": "Australia/Melbourne"
    }
  }
}
1 Like