Default Behavior Changes

This section describes the default behavior changes made to Oracle GoldenGate in relation to the last release.

Release 19.1 (19.29.0.0.251021) - October 2025

Bug 37909236: MariaDB - Remove the requirement for MariaDB binlog_annotate_row_events=OFF

Starting with this version of Oracle GoldenGate, the requirement to set binlog_annotate_row_events to OFF has been removed for MariaDB.

Release 19.1 (19.28.0.0.250715) - August 2025

Bug 37757820: Generic - Enable NOCHECKUNIQUEKEYS as default for BATCHSQL for all Non-Oracle Databases

Enabled NOCHECKUNIQUEKEYS as default for BATCHSQL for all non-Oracle databases.

Release 19c (19.27) - May 2025

Bug 37576949: Generic - Require new integrated replicat (IR ) to have a checkpoint table

Oracle GoldenGate will require a checkpoint table when creating an integrated Replicat.

Any existing integrated Replicats must be rebuilt to include a checkpoint table. The ALTER REPLICAT command cannot be used to add a checkpoint table to an existing Replicat process that was created with NODBCHECKPOINT.

Release 19.25.0.0.241015 - October 2024

Oracle GoldenGate Wallets Security Update
Auto-login property removed from the Oracle GoldenGate wallets

To enhance the security of Oracle GoldenGate wallets that store credential information (login information of Microservices users), the auto-login property of Oracle GoldenGate wallets has been removed.

As a result, after the deployment has been patched to Oracle GoldenGate release 19.25 and higher and started, rolling back to the previous Oracle GoldenGate release of 19.24 or lower, is not feasible as the password protected wallets cannot be converted back to auto-login wallets automatically.

A short-term workaround to get the information stored in the wallets before patching to Oracle GoldenGate Release 19.25 or higher, is to save the auto-login wallets from the earlier version and manually restore these wallets on a rollback.

Release 19.1.0.0.230418 - April 2023

Oracle
Opatches bundled with JDK for Oracle

The JDK is now packaged in the Oracle GoldenGate patch starting release version 21.10 and 19.1.0.0.230418. Please note that only <GG_HOME>/jdk directory is updated with the GoldenGate patch releases. See Doc ID 2359395.1 for more information and additional references for updating JDK either through GoldenGate patch or independently.

You still have the option to install the latest JDK patch into <GG_HOME>/jdk directory independently at any time. See Doc ID 1492980.1 for more information.

Release 19.1.0.0.200714 - September 2020

PostgreSQL
Parameter TransactionErrorBehavior must be set to 2 while specifying data
For PostgreSQL Replicat to be able to handle the database error conditions appropriately the value of the parameter TransactionErrorBehavior must be set to 2. It is a required parameter for Oracle GoldenGate, which needs to be specified inside the odbc.ini file under the DSN. Following is a sample DSN specifying the parameter:
[ODBC]
IANAAppCodePage=4
InstallDir=/u01/ggate

[pgdsn]
Driver=/u01/ggate/lib/GGpsql25.so
Description=DataDirect 7.1 PostgreSQL Wire Protocol
Database=mypgdb
HostName=mypghost
PortNumber=5432
LogonID=mypguser
Password=**********
TransactionErrorBehavior=2

To know more, see https://media.datadirect.com/download/docs/odbc/allodbc/index.html#page/odbc/transaction-error-behavior.html

Release 19c (19.1.0.0.200714) - July 2020

PostgreSQL
DEFERAPPLYINTERVAL not working as expected for PostgreSQL Replicat

If the time zone is not same for the database and operating system, then Replicat waits until the local GMT time of the source system is greater than record commit timestamp + DEFERAPPLYINTERVAL delay.

Replicat is unable to identify the checkpoint table when created in mixed case after Replicat restart

The checkpointtable name must be in lower case without quote and without any special character in it.

Release 19c (19.1.0) - May 2020

Oracle GoldenGate Configuration Assistant doesn't run if there is a space in the Oracle GoldenGate home directory name

Oracle GoldenGate Configuration Assistant (OGGCA) on Windows does not run if the Oracle GoldenGate home directory name or OGG_HOME has space in it, for example OGG HOME.

Release 19c (19.1.0) - September 2019

INFO HEARTBEATTABLE

The INFO HEARTBEATTABLE command for SQL Server now reports heartbeat frequency interval, purge frequency interval, and retention time.

TRANLOGOPTION QUERYTIMEOUT default value

For SQL Server, the default QUERYTIMEOUT has been extended from 30 seconds to 300 seconds.

Adding Validation After DDL Change

Extract for SQL Server will abend if it detects a difference in table structure between the source table and the Change Data Capture table.

TLS 1.2 Connection Support

For SQL Server, TLS 1.2 connection support, if enabled, is provided automatically by the Extract and Replicat.

Prerequisites for Using Oracle GoldenGate 19c with MySQL

Oracle GoldenGate for MySQL has a dependency on OpenSSL library, so availability of OpenSSL library is a prerequisite.

Linux: Set LD_LIBRARY_PATH to include the path where OpenSSL library is installed.

Windows: For MySQL 8.0 and higher, the OpenSSL library is shipped with MySQL server and is kept in the \bin directory of the MySQL home directory. You must ensure that the location of the OpenSSL is added to the path environment variable.

For example, D:\path\to\MySQLServer_install_dir\bin directory needs to be added to the PATH environment variable.

Alternatively, you can install the latest MySQL C++ connector (MySQL 8.0 or greater), which contains OpenSSL library and make sure that the location of the OpenSSL is added to the path environment variable. For example, C:\Program Files\MySQL\Connector C++ 8.0\lib64 directory needs to be added to the PATH environment variable.

With MySQL 5.7 or less, you need to install the latest MySQL C++ connector (MySQL 8.0 or greater), which contains the OpenSSL library and make sure that location of the OpenSSL is added to the PATH environment variable. For example: C:\Program Files\MySQL\Connector C++ 8.0\lib64 directory needs to be added to the PATH environment variable.

Oracle GoldenGate for MySQL 8.0 has a dependency on OpenSSL library so the availability of this library is a prerequisite. You need to ensure that the library is installed on the system running Oracle GoldenGate and path to this library is set appropriately.

No pattern restriction for Oracle GoldenGate user name but maximum length is 512 characters

Constraints for Oracle GoldenGate user name have been removed but the maximum length is 512 characters. For Basic and Certificate type users there are no constraints on special characters for the user name in REST API.

However, in the Microservice Architecture web interface, the user name can only include specific special characters for a Basic type user. These characters are:

at sign (@), period (.) , dash (-), comma (,), underscore (_), number sign (#), dollar sign ($), plus sign (+), backslash (\), slash (/), equal sign (=), less than sign (<), or greater than sign (>).

Release 19c (19.1.0) - May 2019 Initial Release

Microservices implementation requires stronger passwords
The passwords for users in Microservices implementation require stronger passwords, with a capital letter, a number, and a special character.
Trail File Format

After Extract update, if a newer trail file format is specified then the primary Extract will automatically rollover to the next trail file and writer in the specified trail file format. There is no need to run the ALTER EXTRACT ETROLLOVER command.

Extract Default Trail File Version
The primary Extract writes trail file in the same format as existing trail file format when you upgrade to Oracle GoldenGate 19c, unless you explicitly specify the trail file format version using the FORMAT RELEASE option. This behavior change prevents subsequent Replicat to abend if replicat is not upgraded.
_INFINITYTOZERO parameter is no longer required
The _INFINITYTOZERO parameter is no longer required. When Oracle GoldenGate detects the +INF or -INF values in an Oracle numeric field, it is handled automatically as if this parameter is already set.

If the target is Oracle Replicat 19c release, +INF, and -INF are applied properly. For all other databases including older Oracle Replicat, 0 value is applied.

Oracle TIMESTAMP WITH TIME ZONE capture
TIMESTAMP with TIMEZONE with region ID data is now supported for FETCH and initial load. For details, see TRANLOGOPTIONS in Reference for Oracle GoldenGate

This feature is enabled automatically if needed and you no longer need to specify TRANLOGOPTIONS INCLUDEREGIONID. For non-Oracle target, use TRANLOGOPTIONS INCLUDEREGIONIDWITHOFFSET to convert region ID to time offset from UTC.

GETCTASDML option default setting
GETCTASDML option available with TRANLOGOPTIONS parameter is enabled by default.
NOALLOWNULLABLEKEYS default setting
The default setting for the NOALLOWNULLABLEKEYS parameter is set to true.

This feature has been created to help customers easily identify tables that may be problematic due to multiple NULL values being allowed in a key column.

Change in Binlog Format Support

(MySQL only) Capture silently ignores the binlog events that are not written in the ROW format instead of abending when it detects a binlog_format other than ROW.