Google BigQuery ODBC 8.0.0 UNIX
- Last Updated: May 8, 2026
- 13 minute read
- OpenAccess SDK
- Documentation
README
Progress(R) DataDirect(R)
Progress(R) DataDirect(R) for ODBC for Google BigQuery(TM)
UNIX and Linux Platforms(32- and 64-bit)
Release 8.0.0
February 2026
***********************************************************************
Copyright (C) 2026 Progress Software Corporation and/or its
subsidiaries or affiliates. All Rights Reserved.
***********************************************************************
This README file contains information for Progress(R) DataDirect(R)
for ODBC for Google BigQuery(TM) Driver.
This README file contains information not included in the PROGRESS
DATADIRECT(R) FOR ODBC FOR GOOGLE BIGQUERY DRIVER USER'S GUIDE.
CONTENTS
Post-GA Product Announcements
Requirements
Installation Directory
Data Source and Platform Support
Changes Since 8.0.0 GA
Release 8.0.0 Features
Required Operating System Patches
Configuring Data Sources
Notes, Known Problems, and Restrictions
Driver WorkAround Options
Documentation
Installed Files for 32-bit Drivers
Installed Files for 64-bit Drivers
Post-GA Product Announcements
The readme files will no longer be updated with product announcements and new
features after the General Availability (GA) of the product. For the latest
updates and enhancements, please refer to the release notes
(https://www.progress.com/datadirect-connectors/whats-new).
Requirements
* The installer program requires a JVM that is Java SE 11 or higher, including
Oracle JDK, OpenJDK, and IBM SDK (Java) distributions.
* The driver requires a Java Virtual Machine (JVM) that is Java SE 8 or higher,
including Oracle JDK, OpenJDK, and IBM SDK (Java) distributions. Also,
you must set the library path environment variable of your operating system
to the directory containing your JVM's libjvm.so [sl | a] file and that
directory's parent directory.
* The driver requires the following runtime libraries:
- AIX: C/C++ runtime libraries version 16.1 or higher
- Linux: C/C++ runtime libraries version GCC 2.12 or higher
- Solaris: C/C++ runtime libraries version 12.6 or higher
- IBM Power 8 (64-bit): C/C++ runtime libraries of GCC 2.17 or higher
Installation Directory
* The default installation directory for the 32-bit driver is:
/opt/Progress/DataDirect/ODBC
* The default installation directory for the 64-bit driver is:
/opt/Progress/DataDirect/ODBC_64bit
Data Source and Platform Support
For the latest data source and platform support information, refer to the
Product Compatibility Guide:
https://docs.progress.com/bundle/datadirect-product-compatibility/resource/
datadirect-product-compatibility.pdf
Changes Since 8.0.0 GA
CVE-2022-41853 - Use of Externally-Controlled Input to Select Classes or Code
('Unsafe Reflection')
-----------------------------------------------------------------------------
Several Progress DataDirect ODBC drivers utilized a version of HyperSQL
Database that was vulnerable to remote code execution described in
CVE-2022-41853. All impacted drivers have been patched to fix this
vulnerability. For details on impacted drivers and fixed versions, refer to
the following KB article:
https://community.progress.com/s/article/DataDirect-ODBC-Critical-Security-
Bulletin-November-2022-CVE-2022-41853
Documentation
-------------
Any product package made available after February 9, 2021 will not include the
HTML help system or user's guide PDF. The full documentation set, including
these items, is available from the Progress Information Hub:
https://docs.progress.com/category/datadirect-google-bigquery
While the product packages will not include these documentation items, the
installation Help directory will provide an HTML redirect for direct access
to the HTML help.
Note that all Progress DataDirect for ODBC documentation has been migrated to
the Progress Information Hub:
https://docs.progress.com/
Enhancements
------------
* The driver binaries now include debugging symbols that can be used
for diagnosing and debugging issues in the driver.
* The ICU library files that are installed with the product have been upgraded
to version 74.1. As a part of this upgrade, the following platforms and their
file names have been updated:
- AIX platforms
- 32-bit driver: From libivicu28.a to libivicu.a
- 64-bit driver: From libddicu28.a to libddicu.a
Note - This upgrade is available starting in build 08.02.1072 of the ICU
library files.
- Linux platforms
- 32-bit driver: From libivicu28.so to libivicu.so
- 64-bit driver: From libddicu28.so to libddicu.so
Note - This upgrade is available starting in build 08.02.0965 of the ICU
library files.
- Solaris platforms (Sparc and Solaris X)
- 32-bit driver: From libivicu28.so to libivicu.so
- 64-bit driver: From libddicu28.so to libddicu.so
Note - This upgrade is available starting in build 08.02.1799 of the ICU
library files.
- Limited availability plaform (IBM Power 8)
- 64-bit driver: From libddicu28.so to libddicu.so
Note - This upgrade is available starting in build 08.02.1799 of the ICU
library files.
As part of the ICU 74.1 upgrade, the complier and runtime versions for the
driver have been changed to the following:
- For AIX platforms, the compiler version has been upgraded to xlclang++ 16.1.
As a result, you must have C/C++ runtime libraries of 16.1 or higher on
your machine.
- For Linux platforms, the compiler version has been upgraded to GCC 7.3.1.
As a result, you must have C/C++ runtime libraries of GCC 2.12 or higher on
your machine.
- For Solaris platforms, the compiler version has been upgraded to Oracle
Developer Studio 12.6. As a result, you must have C/C++ runtime libraries
of 12.6 or higher on your machine.
- For limited availability platform IBM Power 8 (64-bit), the compiler version
has been upgraded to GCC 7.3.1. As a result, you must have C/C++ runtime
libraries of GCC 2.17 or higher on your machine.
* The driver has been enhanced to retry API call executions when an HTTP
failure or driver exception occurs. You can configure this behavior with the
new Retry Exceptions (RetryExceptions) connection option. When this option is
set to 1, the driver uses the retry value specified by the WS Retry Count
(WSRetryCount) connection option.
* The driver has been enhanced to support fetching access and refresh tokens at
connection when OAuth2.0 is enabled. When using the new dynamic authorization
code grant, you can initiate an authorization code grant flow by specifying
login credentials using the login prompt for your service, thereby providing
a method to authenticate without fetching access and refresh tokens via the
Configuration Manager or a third-party application. In addition, the new
Enable Login Prompt (EnableLoginPrompt) and Redirect URI (RedirectURI)
options have been added to enable this functionality.
* The driver has been enhanced to support the JSON and Interval data types,
which map to the SQL_LONGVARCHAR and SQL_VARCHAR odbc data
types respectively.
* The driver has been enhanced to support the Google BigQuery Streaming API
for executing batch inserts. The Use Streaming Insert (UseStreamingInsert)
connection option has been added to the driver. This option is enabled by
default.
* A Password Encryption Tool, called ddencpwd, is now included with the product
package. It encrypts passwords for secure handling in connection strings and
odbc.ini files. At connection, the driver decrypts these passwords and passes
them to the data source as required.
* The driver has been enhanced to allow users to specify values for the
following exposed connection options:
- Auth URI and Token URI for OAuth 2.0 authentication.
- JWT Audience and Token URI for Service Account authentication.
Previously, the driver used the default values for these options when
authenticating to Google BigQuery.
* The driver has been enhanced to fetch metadata for multiple tables parallelly
at connection time. This enhancement provides performance benefits when
connecting to a dataset that has a large amount of data.
* The driver has been enhanced with the new Primary Key Pattern
(PrimaryKeyPattern) connection option, which allows you to determine which
column in a table is designated as the primary key. Google BigQuery does
not have the concept of primary keys, or even uniqueness. However, some
applications will not function properly without at least one column in a
table designated as the primary key. This option allows your applications
that require a primary key to function correctly when connecting to Google
BigQuery data sources. See the "Notes, Known Problems, and Restrictions"
section for a description of this option.
* The driver has been enhanced to support the BIGNUMERIC data type,
which maps to the SQL_DECIMAL ODBC data type.
* The Service Account Key Content connection option has been added to
the driver. It allows you to specify the private key required to
authenticate to Google BigQuery when service account authentication
is enabled (AuthenticationMethod=serviceaccount). In contrast, the
Service Account Private Key option allows the user to specify the
.json or .p12 file that contains the private key. If you do not want to
persist the private key file in your environment, you should use the
Service Account Key Content option. The value of the Service Account
Key Content option must be the value of the private_key property in the
private key file downloaded from the Google Cloud Platform (GCP)
Console. The value of the option should not be hardcoded in an ODBC
data source. Rather, it may be specified in the application with the
SQLConnect ODBC API, in a connection string as with SQLDriverConnect
and SQLBrowseConnect, or through the Logon dialog prompt. (If your
operating system supports the Logon dialog, the prompt appears when the
value has not been otherwise specified.) When specifying the value of
Service Account Key Content, surrounding quotation marks should be omitted.
* The Enable Catalog Support connection option has been added to the
driver. It determines whether the driver supports specifying values
for catalog parameters in metadata calls. Note that catalogs and
schemas are equivalent to projects and datasets in Google BigQuery.
The following valid values are supported:
- If set to 1, a value can be specified for the catalog parameter
in metadata calls. For example:
SQLTables("MyProject","Dataset1","Employee",Null), where MyProject
is a catalog, Dataset1 is a schema, and Employee is a table.
- If set to 0, no value can be specified for the catalog parameter
in metadata calls. The values for catalog and schema must be
specified within the schema parameter, seperated by a period.
For example: SQLTables(Null,"MyProject.Dataset1","Employee",Null),
where MyProject is a catalog, Dataset1 is a schema, and Employee
is a table.
The default value is 0.
Note: When you attempt to connect with the enhanced driver for the
first time, either delete the existing schema files or set the Create
Map connection option to ForceNew.
* The drivers using base version B0649 and later have been enhanced to
include timestamp in the internal packet logs by default. If you want to
disable the timestamp logging in packet logs, set PacketLoggingOptions=1.
The internal packet logging is not enabled by default. To enable it,
set EnablePacketLogging=1.
* The driver has been enhanced to support the Google BigQuery Storage API
when fetching large result sets.
Note: Currently, the Storage API is supported only on Windows 64-bit,
Linux 64-bit, and JVM 64-bit. If an application attempts to use the
Storage API on an unsupported platform, the driver falls back to the
Standard API.
* The Driver Manager for UNIX/Linux has been enhanced to support setting the
Unicode encoding type for applications on a per connection basis. By passing
a value for the SQL_ATTR_APP_UNICODE_TYPE attribute using SQLSetConnectAttr,
your application can specify the encoding at connection. This allows your
application to pass both UTF-8 and UTF-16 encoded strings with a single
environment handle.
The valid values for the SQL_ATTR_APP_UNICODE_TYPE attribute are
SQL_DD_CP_UTF8 and SQL_DD_CP_UTF16. The default value is SQL_DD_CP_UTF8.
This enhancement is available in build 08.02.0449 of the driver manager.
Changed Behavior
----------------
* The installer program now requires you to install a JRE that is Java SE 11 or
higher before running the installer. In earlier versions, the JRE used by the
installer program was included in the product. However, to avoid potential
security vulnerabilities, the installer program no longer includes a JRE.
Instead, the installer program uses the JRE in your environment to allow for
the most secure version of a JRE to be used.
Notes:
- This change does not affect the JVM requirements for the driver. For the latest
driver requirements, refer to the Product Compatibility Guide:
https://docs.progress.com/bundle/datadirect-product-compatibility/resource/
datadirect-product-compatibility.pdf
- The installer program cannot remove the already installed JRE files from the
install directory automatically. Remove them manually.
* The product package no longer includes the ODBC Cursor library file
(odbccurs.so) because it has some known security vulnerabilities that
could potentially expose you to security risks.
Note: The installer program cannot remove the ODBC Cursor library file
automatically while installing a new version of the driver. Remove it
manually.
* The installer program has been updated to no longer install common components
for drivers that do not use them. As a result, the installer program no longer
installs the following common components for the Google BigQuery driver:
- OpenSSL library files, such as ivopenssl30.so, ddopenssl30.so, fips.so,
and openssl.cnf.
- Curl library files, such as libivcurl28.so and libddcurl28.so.
If the files are not used by any other DataDirect driver on your machine, you
can safely remove them from existing product directories.
* The default value of the SchemaSet configuration option has been changed
to the project and dataset specified at connection.
* The default value of the WSRetryCount connection option has been changed to
5.
Release 8.0.0 Features
The Progress DataDirect for ODBC for Google BigQuery driver supports both
standard and legacy SQL dialects of Google BigQuery. It supports create, read,
update, and delete operations in internal tables (stored inside Google
BigQuery) and read operations in external tables (stored in data sources
outside Google BigQuery). In addition, the driver:
* Serves as a complete pass-through driver, leveraging the SQL engine
functionality of Google BigQuery to execute SQL queries.
* Returns data for complex data types, such as Array and Struct, as JSON
strings, which are easy to comprehend for ODBC applications.
* Provides proxy support using ProxyHost, ProxyPassword, ProxyPort, and
ProxyUser connection properties.
* Supports the handling of large result sets with configurable paging and the
FetchSize and WSFetchSize connection properties.
Configuring Data Sources
Data sources are stored in the system information file (typically,
odbc.ini). For details on configuring this file, see the PROGRESS DATADIRECT
FOR ODBC FOR GOOGLE BIGQUERY DRIVER USER'S GUIDE.
Notes, Known Problems, and Restrictions
The following are notes, known problems, and restrictions for the
8.0 release of the driver:
* When using the Streaming API for insert operations, the rows are queued and
appear in the table after a delay. The duration of the delay varies and can
go up to 30 minutes. You must not modify the table or run other operations on
the table while there are rows in the streaming queue. Changing the table's
metadata or running DML operations can cause uncommitted streaming rows to be
lost.
* Primary Key Pattern description
GUI Name:
Primary Key Pattern
Attribute Name:
PrimaryKeyPattern
Purpose:
Determines which column in a table is designated as the primary key. Google
BigQuery does not have the concept of primary keys, or even uniqueness.
However, some applications will not function properly without at
least one column in a table designated as the primary key. This option
allows your applications that require a primary key to function correctly
when connecting to Google BigQuery data sources.
Valid Values:
* | <column_name>
where:
<column_name>
is the name of the column, specified as a regular expression, that you want
designated as the primary key in each table.
Behavior:
If set to *, the driver designates the first column in each table that is not
of the BOOL, RECORD, ARRAY or GEOGRAPHY data type as the primary key.
If set to <column_name>, the driver designates the first column in each table
whose name matches the specified regular expression. The driver will not
designate any column that is of the BOOL, RECORD, ARRAY, or GEOGRAPHY data
type as the primary key.
If no value is specified, the driver does not designate a primary key for any
tables. This is the typical behavior for Google BigQuery data sources.
Default:
No default value
* The driver does not support specifying values for the same connection
option multiple times in a connection string or DSN. If a value is
specified using the same attribute multiple times or using both
long and short attributes, the connection may fail or the driver may
not behave as intended.
* For metadata calls, the driver returns catalog as null and schema
in catalog.schema format. For example, for the following call:
getTables(p1,d1,t1,null), where p1 is project, d1 is dataset, and t1 is table,
the driver will return catalog as null and schema as p1.d1. Note that
catalog and schema are equivalent to project and dataset in
Google BigQuery.
* If the file type of the private key file used for service account
authentication is .p12, the authentication will fail, unless the
skipDDPKIProvider system property is set to true.
* The driver will potentially assemble an unusable CLASSPATH when
there are multiple drivers installed and the underlying framework's
version is different in each of the jars when JVMClassPath argument is
not pointed to the required jar.
Driver WorkAround Options
Progress DataDirect has included non-standard connection options (workarounds)
for the driver that enable you to take full advantage of packaged ODBC-enabled
applications requiring non-standard or extended behavior. Refer to the chapter
"WorkAround options" in THE PROGRESS DATADIRECT FOR ODBC DRIVERS REFERENCE for a
description of these options.
Documentation
PROGRESS DATADIRECT FOR ODBC FOR GOOGLE BIGQUERY DOCUMENTATION SET
------------------------------------------------------------------
The driver documentation set is available from the Progress Information Hub:
https://docs.progress.com/category/datadirect-google-bigquery
You can access the online help system directly via the HTML redirect in the
installation Help directory.
Documentation
THE PROGRESS DATADIRECT FOR ODBC FOR GOOGLE BIGQUERY DRIVER
USER'S GUIDE
------------------------------------------------------------
The User's Guide is provided in PDF and HTML versions. Both versions
are installed in the GoogleBigQueryHelp subdirectory of your product
installation directory. You can access the HTML help by opening the index.html
file. The PDF version, which you can view using Adobe Reader, can be viewed by
opening the bigqueryodbcuser.pdf file.
NOTE: To download Adobe Reader, visit the Adobe Web site at
http://www.adobe.com.
Installed Files for the 32-bit Driver
This file list assumes a full installation of the 32-bit driver and
documentation.
The installer copies the following files and subdirectories to the
product installation directory, by default:
/opt/Progress/DataDirect/ODBC:
odbc.csh Setup script for C shell
odbc.ini Sample odbc.ini file
odbcinst.ini Sample odbcinst.ini file
odbc.sh Setup script for Bourne shell
IVODBC.LIC DataDirect license file
fixes.txt List of fixes since last release
license.txt End User License Agreement
/bin:
ivtestlib Test application to check that required
libraries are present and loadable
/help/:
-------
*.html HTML redirects to online connector help
systems and documentation resources
/include:
odbcinst.h Include files
qesqlext.h
sql.h
sqlext.h
sqltypes.h
sqlucode.h
sqlunx.h
/java/lib:
googlebigquery.jar Java components of the driver
/lib:
ivgbq28.so DataDirect Driver for Google BigQuery
ivtrc28.so Progress DataDirect trace library
libivicu.a Unicode conversion tables for AIX platforms
libivicu.so Unicode conversion tables for Linux and
Solaris platforms
libodbc.so ODBC Driver Manager [.a on AIX]
libodbcinst.so ODBC Installer [.a on AIX]
odbc.so ODBC Driver Manager (dynamically loadable)
[AIX only]
odbcinst.so ODBC Installer (dynamically loadable)
[AIX only]
/locale/en_US/LC_MESSAGES:
ivgbq28.mo Google BigQuery driver message file
ivgbq28.po Google BigQuery driver message file source
odbc.m ODBC Driver Manager message file
odbc.po ODBC Driver Manager message source
/NOTICES:
ODBC for Google BigQuery
v8.0 notices.txt Third-party vendor license agreements
/READMES:
ODBC for Google BigQuery
v8.0 readme.txt This file
/samples:
/example/example Example application
/example/example.c Example source
/example/example.h Example header
/example/example.mak Example make file
/tools:
ddencpwd Password Encryption Tool
ddextu License Extender utility
ddprocinfo Processor Information utility
/uninstall/*.* Files used to uninstall the product
Installed Files for the 64-bit Driver
This file list assumes a full installation of the 64-bit driver and
documentation.
The installer copies the following files and subdirectories to the
product installation directory, by default:
/opt/Progress/DataDirect/ODBC:
odbc.csh Setup script for C shell
odbc.ini Sample odbc.ini file
odbcinst.ini Sample odbcinst.ini file
odbc.sh Setup script for Bourne shell
DDODBC.LIC DataDirect license file
fixes.txt List of fixes since last release
license.txt End User License Agreement
/bin:
ddtestlib Test application to check that required
libraries are present and loadable
/help/:
-------
*.html HTML redirects to online connector help
systems and documentation resources
/include:
odbcinst.h Include files
qesqlext.h
sql.h
sqlext.h
sqltypes.h
sqlucode.h
sqlunx.h
/java/lib:
googlebigquery.jar Java components of the driver
/lib:
ddgbq28.so DataDirect Driver for Google BigQuery
ddtrc28.so Progress DataDirect trace library
libddicu.a Unicode conversion tables for AIX platforms
libddicu.so Unicode conversion tables for Linux, Solaris
and IBM Power 8 platforms
libodbc.so ODBC Driver Manager [.a on AIX]
libodbcinst.so ODBC Installer [.a on AIX]
odbc.so ODBC Driver Manager (dynamically loadable)
[AIX only]
odbcinst.so ODBC Installer (dynamically loadable)
[AIX only]
/locale/en_US/LC_MESSAGES:
ddgbq28.mo Google BigQuery driver message file
ddgbq28.po Google BigQuery driver message file source
odbc.m ODBC Driver Manager message file
odbc.po ODBC Driver Manager message source
/NOTICES:
ODBC for Google BigQuery
v8.0 notices.txt Third-party vendor license agreements
/READMES:
ODBC for Google BigQuery
v8.0 readme.txt This file
/samples:
/example/example Example application
/example/example.c Example source
/example/example.h Example header
/example/example.mak Example make file
/tools:
ddencpwd Password Encryption Tool
ddextu License Extender utility
ddprocinfo Processor Information utility
/uninstall/*.* Files used to uninstall the product
~~~~~~~~~~~~~~~~~
February 2026
End of README.TXT