Simba BigQuery ODBC throws "Authentication failed: invalid_grant"

Problem

Simba BigQuery ODBC driver throws the following error after more than 1 hour of initial authentication to BigQuery:

[Simba][DriverOAuthSupport] (8711) Authentication failed: invalid_grant

Some use cases when the initial authentication might be in-use for more than 1 hour include:

  • Fetching a large result table
  • Waiting for a long running job

Environment

  • BigQuery
  • ODBC version <2.2.3.1002
  • Authentication method is using service account
Note: The error message can only be seen in the client-side ODBC log and cannot be found in Cloud Logging.

Solution

  1. Upgrade the ODBC version to at least 2.2.3.1002, or use user account instead of service account.

Cause

There is a known issue that can cause the driver to use expired JWT (expiration time 1 hr) to authenticate. This is also only known to affect service account but not user account.

This should already been fixed by version 2.2.3.1002.