3 Known Issues and Workarounds
This chapter describes the known issues at the time of release.
Release 21c (21.17) - February 2025
Bug 37501963: Db2 for i - Extract not capturing records when there is a DOT (.) in table name
If a name part for IBM i contains a quoted string that
includes a DOT (.) or space character, then Extract might skip the
data for those tables. An example would be
myschema."MY.NAME"
.
Workaround
None.
Release 21c (21.16.0.0.0) - October 2024
Bug 33834951 - Extract abends with error "CACHEMGR: filecaching: pthread_created failed: errno: 11 (Resource temporarily unavailable), after applying Jan 2022patch 33742666 (19.1.0.0.220118)"
Any Bounded Recovery checkpoints made prior to 21.6 release (release 21.5 or lower), cannot be used by Extract after patching to Oracle GoldenGate release 21.6 or later. As a result, Extract can only use standard recovery till at least two Bounded Recovery checkpoints are completed with the updated version.
Workaround
Before patching to Oracle GoldenGate release 21.6 or later, ensure that Extract is updated with no long running transactions, and the archive logs are available with Extract restart position.
Release 21c (21.13.0.0.0) - January 2024
Bug 36104153: Aurora PostgreSQL - Error in Amazon Aurora PostgreSQL WAL causes Extract to generate the error "Sequence ID Out Of Order"
In some conditions where large transactions are committed on
a source Aurora PostgreSQL database, a sender error in the Amazon
Aurora PostgreSQL Write-Ahead-Log (WAL) causes the Extract to
disconnect and upon restarting, generates a "Sequence ID Out
Of Order
" error in the Extract. The error in the
Aurora PostgreSQL logs which causes the problem is a known issue in
Aurora PostgreSQL.
Workaround
Set the AWS Aurora parameter group setting
rds.logical_wal_cache
to 0
to turn-off the write-through cache and then restart the writer
instance. With the non-availability of the write-through cache,
Aurora PostgreSQL uses the Aurora storage layer for the
implementation of the native PostgreSQL logical replication process.
It writes the WAL data to storage and then reads the data back from
storage to decode and send to its targets (subscribers).
However, this workaround can result in some performance issue during logical replication for Aurora PostgreSQL database clusters but it does not cause any data loss from existing logical replication.
For more details, see:https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Replication.Logical.html
Release 21c (21.10.0.0.1) - May 2023
Bug 35384626: MySQL - Extract keeps loading after creating it in the WEBUI
When creating an Extract or Replicat, the creation indicator continues to spin and appears to not complete Extract or Replicat creation process.
Workaround
Refresh the browser to update the status of the Extract or Replicat creation process.
Bug 35401376: MySQL - Plugin based DDL replication not supported in 21.10
For MySQL, plugin based DDL replication is not supported in Oracle GoldenGate release 21.10. In addition, for Oracle GoldenGate versions 21.1 to 21.9 that are upgraded to version 21.10 and new installations, plugin based DDL replication will not work.
Workaround
For MySQL 8.0, use log based DDL replication for new Oracle GoldenGate installations and for Oracle GoldenGate versions 21.1 to 21.9 that are upgraded to Oracle GoldenGate version 21.10.
For MySQL 5.7, no workaround is available for new Oracle GoldenGate installations and for Oracle GoldenGate versions 21.1 to 21.9 that are upgraded to Oracle GoldenGate version 21.10.
Bug 35188073: SingleStoreDB - Source NUMBER columns to MySQL and Singlestore BIT columns are not working correctly
For Oracle to MySQL and Oracle to SingleStoreDB, mapping of
Oracle Number
type to MySQL and SingleStoreDB
Bit
type is not working correctly, and
causes Replicat to abend.
Workaround
None.
Release 21c (21.10.0.0.0) - April 2023
For Bug 35384626: Microsoft SQL Server - Extract keeps loading after creating it in the WEBUI
When creating an Extract or Replicat, the creation indicator continues to spin and appears to not complete the Extract or Replicat creation process.
Workaround
Refresh the browser to update the status of the Extract or Replicat creation process.
Release 21c (21.7.0) - August 2022
Bug 34497845: MySQL - In Oracle GoldenGate MA with Group Replication Cluster, Administration Service is failing to start with specified CSN with error, "OGG-12111 JSON element '/' does not match any schemas"
In MA with group replication cluster configuration, the
Administration Service fails to start with specified CSN and
generates the error, OGG-12111 JSON element '/' does not
match any schemas
.
Workaround
None.
Bug 34497984: MySQL - In Oracle GoldenGate 21c MA (21.7.0), Extract cannot be altered to begin at the specified timestamp
In MA mode, there is an issue with the Extract not being
altered to restart at a specified timestamp and fails with the error
Invalid BEGIN datetime entry
.
Workaround
None.
Release 21c (21.7.0) - July 2022
Bug 33772499: Oracle - Integrated Extract latency spikes when enabling TRANLOGOPTIONS PERFORMANCEPROFILE HIGH with low to medium intensity workload
When TRANLOGOPTIONS PERFORMANCEPROFILE HIGH
parameter is enabled for low to medium intensity workload, it spikes
in integrated Extract latency up to several seconds. This is because
the PERFORMANCEPROFILE HIGH
setting increases the
Extract's read buffer size to 8MB and the rule to flush the extract
read buffer is either when the buffer is full or there is no
incoming records for 0.2 seconds. Therefore, any continuous workload
with Extract ingestion rate below 8MB will result in integrated
Extract latency to exceed 1 second.
Workaround
Ensure that if the Extract ingestion rates (or redo
generation rates if 100% of redo is being captured) are below
specific value, such as ~15 MB/sec to get ~0.5 second extract
latency, do not use PERFORMANCEPROFILE HIGH
parameter. If sub-second latency is required, it is recommended to
lower the buffer size accordingly. For example, set the buffer size
to one-third of the redo generation rate in MB/sec to get ~0.3
second maximum Extract latency.
Bug 34654016: MySQL - Order of primary keys in log-based DDL replication
For the log based DDL replication in MySQL release 8.0 or MariaDB release 10.5 and later for Oracle GoldenGate release 21.7.0 and previous releases, the primary keys need to be added in the table in the same order in which columns are defined while creating the table. If the primary keys are added in a different order than the order in which the columns were defined at the time of creating the table, then out of the order primary key is not part of the primary keys.
Workaround
None
Release 21c (21.5.0.0.2) - February 2022
Bug 32853695: SQL Server – ADD TRANDATA fails to enable change data capture for Azure SQL Database Managed Instance
ERROR OGG-05268 Failed to enable change data capture for table 'dbame.table' in the database
'dbname'. SQL error: 50000: [Microsoft][ODBC Driver 17 for SQL Server]
[SQL Server]Could not find stored procedure 'msdb.dbo.rds_cdc_enable_db'.
Note:
This issue may occur in any of the bundle patches of Oracle GoldenGate 21c releases including Oracle GoldenGate for Marketplace 21c (21.1.0), Oracle GoldenGate 21c (21.3.0) and higher versions.Workaround
Manually run EXEC
sys.sp_cdc_enable_db
against the database and rerun
ADD TRANDATA
.
Release 21c (21.4.0.0.0) - October 2021
Bug 33478888: DB2 for i - DELETE TRANDATA command failing with unknown error
The DELETE TRANDATA
command is failing with
an unknown error.
Workaround
Use the native CL command on the
IBM i system, ENDJRNPF
.
Bug 33523611: SQL Server - ADD HEARTBEATTABLE errors on heartbeat creation with TRIM function error
There is an issue with creating the heartbeat table for SQL Server versions 2016 and earlier, and several objects do not get created, making the heartbeat feature unusable.
Workaround
None.
Release 21c (21.3.0) — October 2021
Bug 33407415: PostgreSQL - Extract writes incorrect record in trail with Default logging enabled at the table level
Tables that are configured to be captured by Extract where the FULL Replica Identity logging is not set, can cause downstream Replicat problems when encountering Update and Delete operations, causing the Replicat to abend.
Workaround
Run the ADD TRANDATA
command with the
ALLCOLS
option for any table configured to
be captured by Extract, regardless of whether the table has a
Primary Key or not. This ensures that the table has FULL Replica
Identity logging.
Release 21c (21.3.0) — August 2021
Bug 33107581: Generic - Oracle GoldenGate distribution path abended while using client certificate with a new Certificate Authority (CA)
When using a client certificate for authentication/authorization in a distribution path, the certificate identity needs to be registered as an authorized user in the target deployment and the Certificate Authority (CA) needs to be added to the target deployment's trust store. In some cases, the target deployment may not pick up the newly added CA from its trust store, which results in the distribution path abending with SSL errors.
Workaround
Restart the target deployment whenever you add a new Certificate Authority (CA) to its trust store.
Bug 31717411: Oracle - Integrated Replicat cannot unregister from database if deleted without a DBLOGIN connection
Integrated Replicat is not allowed to be unregistered with the database if the Replicat was deleted without having a connection to the database. The Replicat will be deleted from Oracle GoldenGate but cannot be unregistered from the database.
Workaround
Ensure that you establish a connection to the database prior to deleting the Replicat.
Bug 33193847: Oracle - Non-integrated Replicat fails when applying large JSON doc when underlying storage is BLOB column
Non-integrated Replicat runs into an error (ORA-4083) when applying large
JSON documents to a target table where the underlying storage is a
BLOB column with the IS_JSON
check constraint.
Workaround
Use the DBOPTIONS NOSKIPTEMPLOBS
Replicat parameter.
Bug 31660023: Heterogeneous Databases - The Administration Service web interface does not persist the checkpoint table information
In the Administration Service web interface, the checkpoint table doesn't appear on the Credentials page after you navigate to a different page and return back to the Credentials page. A new user may not know whether a checkpoint table exists or not. Also, if a user provides the same table name as earlier, an error is displayed stating that the checkpoint table already exists. This leads to confusion and the user will need to use the command line to check whether the checkpoint table exists or not.
Workaround
None.
Bug 32995974 - MySQL: Microservices connectivity supports one set of SSL certificates per deployment
Only a single set of SSL certificates per MySQL Microservices deployment
is allowed. This limitation is because there is only one set of
environment variables (OGG_MYSQL_OPT_SSL_CA
,
OGG_MYSQL_OPT_SSL_CERT
,
OGG_MYSQL_OPT_SSL_KEY
) to specify the
certificates.
Workaround
None.
Bug 32843519: PostgreSQL MA: Support for special characters in PostgreSQL identifier names
Support for all possible and valid characters that can be part of PostgreSQL identifier names is not available.
Workaround
None.
Bug 32396863: PostgreSQL - Bidirectional scenario fails when the schema is specified with space "Sch EBIDJTB2"
Filter table is not filtering the records properly when schema is used with space.
Workaround
Remove the space from the schema.
Bug 33123982: PostgreSQL - Alter Extract EOF option is missing in Oracle GoldenGate Microservices web interface
In the Administration Service, Alter Extract shows only three options Now, Position in Log, and Custom Time. However, the EOF option is missing.Workaround
None.
Bug 32940435: PostgreSQL - Replicat abends with invalid byte sequence when using domain type integer
Oracle GoldenGate for PostgreSQL does not support domain type replication.
Workaround
None.
Bug 33066696: SQL Server - UPGRADE HEARTBEATTABLE does not reset TRANDATA
The UPGRADE HEARTBEATTABLE
command works in
SQL Server and does modify the tables, but for existing heartbeat
tables, TRANDATA
needs to be deleted from the
gg_heartbeat
and
gg_heartbeat_seed
tables and then re-added
after the upgrade process.
At present, if the heartbeat was previously enabled, the CDC
Capture instance of the gg_heartbeat
and
gg_heartbeat_seed
tables is of the old
structure, even though the base tables are upgraded to the new
structure.
Workaround
You need to run DELETE TRANDATA
for the
gg_heartbeat
and
gg_heartbeat_seed
tables, then run the
UPGRADE HEARTBEATTABLE
command followed by
ADD TRANDATA
for the
gg_heartbeat
and
gg_heartbeat_seed
tables.
Bug 33225788: SQL Server - BATCHSQL suspended with parallel Replicat and heartbeat table implemented
Parallel Replicat reports a warning that BATCHSQL
is
suspended for every heartbeat record. Under heavy workloads, this
may degrade Replicat performance as it switches out of batch
mode.
Workaround
Do not enable BATCHSQL
in the Replicat when an Oracle
GoldenGate heartbeat table is also configured.
Release 21c (21.1.0) — Initial Release May 2021
Bug 31677892: MySQL - Timestamp values differ in source and target when environment variable TZ differs from MySQL database timezone settings
When the time zone of the Oracle GoldenGate installation server does not match the time zone of the source database server, then TIMESTAMP data sent to the target database will differ from that of the source database.
For Microservices installations, regardless if the time zones are the same, the Extract will resolve the time zone to UTC.
Workaround
Set the TZ variable value to match the timezone value set in MySQL database.
The Extract process has been enhanced to report the current timezone in the session and also display the a message to ensure that the environment variable TZ is set to match the database timezone as timestamp in MySQL depends upon correct setting of TZ.
Determine the source database time zone by running the following query:
select @@system_time_zone
This will return a time zone value, such as PDT.
For Classic Architecture, create a session variable for Oracle GoldenGate, called TZ, and set it equal to the time zone value of the database.
For MA, create a new variable in the deployment that contains the source Extract, called TZ and set it to the value of the source database time zone, then stop any running Oracle GoldenGate processes and restart the Administration Server, then start the Extracts and Replicats.
Bug 31825720: MySQL - In MA, SQLEXEC with parameterized input fails when client character set is not compatible with database character set
In MA, when SQLEXEC is configured with parametrized input in the Extract parameter file, the query reports no records fetched for the query supplied even though the database contains matching records. This is due to the client character set not matching with the database character set causing the query input parameter to be replaced with symbols and so record match fails.
Workaround
Set the client character set to match with database charset in GLOBALS file.
Bug 32595302: MySQL - Extract abend with error "ERROR OGG-00768 The data type (245) is not supported in SQLEXEC functionality"
Columns of JSON data type cannot be used in a SQLEXEC function.
Workaround
None.
Bug 32795888: SQL Server - ADD HEARTBEATTABLE functionality for Azure SQL Database Managed Instance only supports a target configuration
The ADD HEARTBEATTABLE
functionality for an
Azure SQL Database Managed Instance only supports a target
configuration and cannot be used as a source for heartbeat
functionality. ALTER HEARTBEATTABLE NOTARGETONLY
is
not supported as well.
Workaround
None.
Bug 32817253: SQL Server - Extract abends on Azure Managed Instance SQL Server Agent Check with Access is Denied
An Extract configured with a user that has sysadmin rights
running against an Azure SQL Database Managed Instance will Abend
with an Access is Denied
error.
Workaround
Remove the sysadmin
rights for the Extract
user and only set the account to the db_owner
role
within the source database.
Bug 32203789: Checkprm options not supported from Admin Client
When running shell commands from the Admin Client for a
Microservices installation, command options after two dashes,
--
, are ignored.
Workaround
Escape the --
option with a backslash
\--
. For example:
SHELL ./checkprm \--COMMAND EXTRACT