3 Known Issues and Workarounds
This chapter describes the known issues at the time of release.
Release 19c (19.25.0.0.241015) — 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 19.1.0.0.220222 release (release 19.1.0.0.220118 or lower), cannot be used by Extract after patching to Oracle GoldenGate release 19.1.0.0.220222 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 19.1.0.0.220222 or later, ensure that Extract is updated with no long running transactions, and the archive logs are available with Extract restart position.
Release 19c (19.1.0.0.200714) — 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 19.1.0.0.210420 — May 2021
Bug 32795888: SQL Server - ADD HEARTBEATTABLE fails on Azure SQL DB Managed Instance and gives incorrect error message that TARGETGONLY is required
The ADD HEARTBEATTABLE
/ALTER HEARTBEATABLE
NOTARGETONLY
commands do not work for an
Azure SQL Database Managed Instance, and reports
an incorrect error message that
TARGETONLY
is required, when
attempting to use one of these commands.
Workaround
None.
Bug 32791333: Sybase - Heartbeat feature is not supported in Sybase versions 15.7 and 16.1
The heartbeat feature is not supported with Sybase 15.7 and 16.1 database versions. The following error occurs when you try to add a heartbeat table:
2021-04-13 08:50:31 ERROR OGG-10513 The job scheduler database(sybmgmtdb)does not exist.
Configure database sybmgmtdb and add Oracle GoldenGate replication user with correct role to create and run the heart beat job.
Workaround
None.
Release 19c (19.1.0) - September 2020
Bug 31652978: Oracle - Extract is missing INSERTS randomly for one of the active/live table for batch job load
Classic Extract cannot be used to capture from Exadata platforms. To capture from Exadata, Exadata Cloud Service or Exadata Cloud at Customer, or any Exadata cloud service, you must use integrated Extract.
Workaround
None.
Bug 31922955: Generic - LANG=en_US.UTF-16 is not supported
When LANG
is set at the operating system level to
en_US.UTF-16
, it causes GGSCI to hang. The setting of
en_US.UTF-8
is allowed. For example, the setting in Linux,
which would cause GGSCI or Admin Client to han is:
[celclnx29]/bugmnt3/am/celclnx29/SRx.xxxxxxxxxxx/user/gg122> echo $LANG
en_US.UTF-16
Workaround
None.
Bug 31799288: Oracle - Tablespace encryption is not supported with classic Extract
Tablespace encryption is not supported with classic Extract for Oracle database 19c.
Workaround
None.
Bug 31768942: ADB-S - The SHARE option doesn't work for PerPDB capture
The SHARE
option is ignored when registering an Extract for PerPDB
although the registration is successful.
Workaround
None.
Release 19.1.0.0.200714 - August 2020
Bug 31732282 - PostgreSQL: User-defined types are not supported
Oracle GoldenGate for PostgreSQL does not support User Defined Data Types (UDT).
Workaround
Don't use tables which have user-defined data types or exclude such tables from Extract or Replicat parameter file.
Bug 31730629: PostgreSQL - Capture from materialized views is not supported
Capturing records from materialized views is not supported.
Workaround
Do not use materialized views in the Extract parameter file.
Bug 31730647: PostgreSQL - Cannot distinguish null and empty string in UPDATE record
PostgreSQL Extract cannot distinguish the VARCHAR
column
data for empty string or null data if it's inserted as an empty string or NULL data
and later updated with NULL or empty string or the other way round.
Workaroud
Use the NOCOMPRESSUPDATES
parameter.
Bug 31730664: PostgreSQL - The default plugin test_decoding.so must be present in the PostgreSQL installation for Oracle GoldenGate Extract to capture WAL records
Default test_decoding
plugin must be available in the PostgreSQL
instillation directory. If it is an existing database setup and you cannot find
test_decoding.so
under the database LIB
folder
then you must download the test_decoding.so
from the following
location
If database version is PostgreSQL 11:
sudo yum install postgresql11-contrib
If database version is PostgreSQL 10:
sudo yum install postgresql10-contrib
Workaround
None.
Release 19.1.0.0.200714 - July 2020
Bug 31097457: PostgreSQL - Bind bit/varbit types as char/varchar instead of binary
In initial load mode, the bit varying data can be prefixed with 0s in cases where the actual data is less than the length defined on the source bit varying column. The length of the data is rounded to nearest 8-multiple by prefixing 0s.
Workaround
None
Bug 31326961: PostgreSQL - Timestamp data containing AD or BC tags or YEAR component with more than 4 digits is not being captured correctly
The seconds field in the timezone component is not is written to trail when the data
is applied on target PostgreSQL TIMESTAMPTZ
column, causing a
mismatch in the data between source and target.
Workaround
None.
Bug 31326068 - Mismatch in TimestampTZ data when the data captured from the database has seconds in the timezone component
The seconds part of the timezone component in the received data is not considered in
the target databsae. For example, if the received data has timezone component data
1900-03-03 02:02:02.123 +03:59:56
, the 56 seconds in timezone
gets ignored and a mismatch of 56 seconds is observed.
Workaround
If the timezone parameter in the postgresql.conf
file is
utc
this problem does not occur.
Bug 31146341: PostgreSQL - An error occurs if the target database table has an Identity Always column created with the GENERATED ALWAYS AS IDENTITY clause
The following error is be thrown if the target database table has an
Identity Always column created with clause `GENERATED ALWAYS AS
IDENTITY
.
2020-05-09 21:46:39 ERROR OGG-00551 Database operation failed:
Preparing statement (INSERT INTO "public"."int1_nokey" ("id",...). ODBC error:
SQLSTATE 37000 native database error 3624914. [Oracle][ODBC PostgreSQL Wire
Protocol driver][PostgreSQL]ERROR: VERROR; cannot insert into column
"col3"(Detail Column "col3" is an identity column defined as GENERATED ALWAYS.;
Hint Use OVERRIDING SYSTEM VALUE to override.; File
d:\pginstaller.auto\postgres.windows-x64\src\backend\rewrite\rewritehandler.c;
Line 826; Routine rewriteTargetListIU; [Oracle][ODBC PostgreSQL Wire Protocol
driver][PostgreSQL]Failed transaction. The current transaction rolled
back.
Workaround
-
Find the sequence name that is operating on the auto-increment column in the problematic table.
select pg_get_serial_sequence('fruits','id') where table is “fruits” and auto-increment column name is “id” pg_get_serial_sequence -------------------------------- "public.fruits_id_seq"
-
Find the default increment of the seed value for the auto-increment column.
select increment from information_schema.sequences where sequence_name= 'fruits_id_seq' and sequence_schema='public';
-
Change the seed value of the auto-increment column by using the following query:
SELECT SETVAL('fruits_id_seq', (SELECT MAX(id) + increment FROM fruits));
-
Start Replicat.
Bug 31521207: PostgreSQL - Data corruption when converting BIT data into Char/Varchar Data Type
Mapping the PostgreSQL source column of BIT
type with length 1
(BIT
or BIT(1)
or VARBIT(1)
types) onto a target CHAR
or VARCHAR
type column
is not supported.
Workaround
Use the source bit type column with length more than 1.
Bug 31528537: PostgreSQL - Replicat abends with invalid input syntax for type numeric when replicating to @token
Extract from PostgreSQL does not support SQLEXEC
with a
SQL query having DATE
or TIMESTAMP
column in the
WHERE
clause.
Workaround
None.
Bug 31204771: PostgreSQL - DBLOGIN generates the error “Error parsing connect string at offset 51' when using password in special chars”
DBLOGIN
generates an error due to limitations with password
recognition.
Workaround
-
When password has a special character it should be quoted with double quotes.
-
Password string must not use a semicolon as a special character. If semicolon is used then it is treated as the field separator in the connection string, which the driver interprets as a connection option causing the connection to fail.
-
You must not use the password with semicolon while creating
USERIDALIAS
also.
Bug 31216309: PostgreSQL - Extract is unable to register from the standby database when native replication is enabled
Capture from standby database is not supported.
Workaround
None.
Bug 31560266: MySQL - ADD HEARTBEATTABLE message needs to be corrected for MySQL, MariaDB Amazon Aurora, Amazon RDS
If the database user does not have EVENT
permissions within the
database, an incorrect message lists to GRANT EVENT
to
user@databasename
.
Workaround
Grant EVENT
permissions on
user@hostname
and if running against Amazon
Aurora or Amazon RDS, set the event_scheduler
variable to ON via a
new or non-default, parameter group.
Release 19.1.0.0.200414 - June 2020
Bug 31455294: DB2 z/OS - Oracle GoldenGate 19c (19.1.0.4) Extract causes LPAR and DB2 to crash
If Oracle GoldenGate 19c (19.1.0) is installed for DB2 z/OS but a prior installation of the Oracle GoldenGate 12c (12.3.0.1) stored procedures are referenced by the Oracle GoldenGate 19c (19.1.0) installation or not properly replaced, it is possible that an ECSA corruption could occur, which could lead to a fatal abend of the entire LPAR. If you upgrade Oracle GoldenGate, it must be confirmed that the new executables in the DB2 z/OS PDSE are properly installed or that a new name for them is used and referenced in the new Stored Procedure and UDTF definitions.
Workaround
Ensure that the installation is performed correctly.
Bug 30328936: DB2 z/OS - Extract intermittently abends with the error "OGG-06550 Unable to position in log buffer"
When LOBs are present in one or more tables in the Extract or
NOAPIFILTER
is issued, Extract may abend intermittently with
the error OGG-06550 Unable to position in log buffer
.
Workaround
You need to add the following to the Extract configuration:
TRANLOGOPTIONS APIBUFSIZE 100000
If the issue persists, slowly increase the value until it stops. This value must not
be higher than the output BLOB column size defined for the OGGREADB
user-defined table function. This directly affects the size of the ECSA buffer
allocated on the DB2 z/OS system, so it is recommended that you increase this value
only as much as required. If you decide to change the APIBUFSIZE
then it shouldn't be larger than the value of the BUFSIZE
parameter, which has a default value of 1MB.
Release 19.1.0.0.200414 - April 2020
Bug 31202227 - Azure Database for MySQL: Extract abends after second or third heartbeat seed record in the heartbeat table
Extract abends with the following error after the second or third update
to the hb_seed table
when connecting remotely to Azure Database for
MySQL.
ERROR OGG-01161 Bad column index (-4096) specified for tablemysrcdb.gg_heartbeat_seed, max columns = 17..
Workaround
Ensure that the binlog_row_image
system variable is set
to FULL
.
Release 19.1.0.0.200204 - 4 February 2020
Bug 30033958 - DB2 z/OS: Truncate table not captured by Extract
The TRUNCATE IMMEDIATE
performed on a
source database does not reflect in the target database.
Workaround
GETTRUNCATES
are required in the Extract parameter file
to see the change at the target. Also, remove the IMMEDIATE
parameter from the TRUNCATE
command.
Bug 31195430 - TRANLOGOPTIONS EXCLUDETAG does not work with Parallel DML operations
Trail records from PDML transaction are missing tag data/token.
Workaround
None
Release 19c (19.1.0) - October 2019
Bug 30427030 - Oracle: The VIEW PARAMS and VIEW REPORT commands fail in the Admin Client
When running Admin Client on Windows Server, the VIEW
PARAMS
and VIEW REPORT
commands fail when using the
standard viewer utility.
Workaround
To resolve this issue, execute the following command within Admin Client:
SET PAGER notepad
Release 19c (19.1.0) - September 2019
Bug 30328936 - DB2 z/OS: Extract intermittently abends with the error "OGG-06550 Unable to position in log buffer"
When LOBs are present in one or more tables in the Extract or
NOAPIFILTER
is issued, Extract may abend intermittently with
the error "OGG-06550 Unable to position in log buffer"
.
Workaround
You need to add the following to the Extract configuration:
TRANLOGOPTIONS APIBUFSIZE 100000
If the issue persists, slowly increase the value until it stops. This
value must not be higher than the output BLOB column size defined for the OGGREADB
user-defined table function. This directly affects the size of the ECSA buffer
allocated on the DB2 z/OS system, so it is recommended to increase this value only
as much as is necessary. If you decide to change the APIBUFSIZE
then it shouldn't be larger than the value of the BUFSIZE
parameter, which has a default value of 1MB.
Bug 29541089 - SQL Server: Extract capture rates slower for SQL Server 2017 compared to earlier versions
An issue which may cause degradation with Oracle GoldenGate Capture rates for Microsoft SQL Server 2016/2017 has been raised with Microsoft.
Workaround
None.
Bug 30222937 - SQL Server: Incorrect message regarding SQL Server Agent when Extract does not have SYSADMIN rights
When Extract is connected to the SQL Server instance with a login that is not a member of the sysadmin server role, a message is displayed that states that the SQL Agent is not running, which may or may not be correct, as the login does not have the permissions to actually determine the status of SQL Agent.
Workaround
Grant the login used by Extract to be a member of the SYSADMIN
server role, or manually confirm that SQL Agent is running and ignore the warning in
the Extract's report file.
Bug 30222904 - SQL Server: Extract abends without error when permissions issue with AlwaysOn Secondary replica database
When Extract is configured with TRANLOGOPTIONS
ALWAYSONREADONLYROUTING
, using a DSN connection through the listener,
and the Always On group is configured for read-only routing, the Extract abends
without any error if the login used by Extract has not been mapped to the database
user on the secondary replica database.
Workaround
Create the same login or password used by the Extract on the secondary instances and
grant the login SYSADMIN
rights.
Bug 29209870 - SQL Server: SQL Server CDC TRANDATA does not support period in database or table names
ADD TRANDATA
for Oracle GoldenGate for SQL Server does
not support periods in the database or table names.
Workaround
None.
Bug 29882931 - MySQL: Replicat Abends if the SOURCEDEF Parameter is used while upgrading from the Oracle GoldenGate 18c release to the 19c release
Oracle GoldenGate Replicat abends with the
error "OGG-01163 Bad column length (6) specified for column ID"
, if
you use the SOURCEDEF
parameter while upgrading from the Oracle GoldenGate 18c release to the 19c release.
Workaround
Do not use the SOURCEDEF
parameter while upgrading.
Bug 27028084 - MySQL: Binary Log File Size in Remote Capture
For remote capture in Oracle GoldenGate MySQL, binary log files greater than 4 GB in size are not supported. Consequently, while positioning an offset, an offset greater than 4294967295 is also not supported.
Workaround
None.
Bug 30023717 - Oracle: Parallel Replicat occasionally fails with ORA-1403 when processing transactions with extremely high number of inter-dependencies
In rare
situations of a transaction with a high number of potential dependencies, Parallel
Replicat abends with the error ORA-1403: "no data found"
.
Workaround
Restart Replicat. The original transactions will correctly be applied while maintaining global data consistency.
Bug 30207560 - Oracle: GGSERR log file cannot rollover on Windows when Oracle GoldenGate processes are open
The
ggserr.log
file is configured to automatically rollover after a
default or modified size. However for Oracle GoldenGate on Windows, the
ggserr.log
file cannot rollover when there are processes
running.
Workaround
Stop all running Extracts, Pumps, Replicats, then restart them. This
will allow the ggserr.log
to rollover.
Bug 30250118 - Oracle: AIX and Solaris stats for auto-CDR doesn't report back correctly
When Sharding is implemented on Oracle GoldenGate 19c on AIX or Solaris with Oracle database 18c, auto-CDR doesn't report back stats correctly.
Workaround
None.
Release 19c (19.1.0) — May 2019 Initial Release
Bug 27938481 : Error message not generated when ALLOWDUPTARGETMAP with different KEYCOLS is used in Parallel Replicat
Oracle GoldenGate doesn't generated
an error message for ALLOWDUPTARGETMAP
with different
KEYCOLS
, which is not supported in non-integrated parallel
Replicat. ALLOWDUPTARGETMAP
is not supported in integrated parallel
Replicat and in integrated Replicat. ALLOWDUPTARGETMAP
with
different KEYCOLS
is supported in classic and coordinated
Replicat.
Workaround
None.
Bug 29761322 - Oracle: Multibyte CLOB encoding is incorrect when Extract writes 12.2 trail format after software upgrade to 18.1 or later
When Extract writes multibyte CLOB data to the trail in the same format
as the existing trail file format, Extract writes MBCS CLOB data in incorrect
encoding. This happens when the trail file format is 12.2 or older or FORMAT
RELEASE
is used to specify a format that is older than 12.2.
Workaround
Perform an explicit ETROLLOVER
after software upgrade if the current
trail file format is 12.2 and there are multibyte CLOBs.
Bug 25890033 - DB2 for i: Issue with multi-journal support
It is still recommended that Extracts on DB2 for i read from a single journal. However, this does have a side effect that if Heartbeat is enabled, that the heartbeat tables must be journaled to the same journal as the data journal being used for replication.
Workaround
It is recommended that you use DELETE
/ADD TRANDATA
for the heartbeat table to enable journaling to the correct journal.
Bug 29778593 - DB2 LUW, DB2 for i, DB2 z/OS, Teradata: Heartbeat lag command does not display incoming and outgoing paths
Heartbeat lag command does not display incoming and outgoing paths. However, the heartbeat and heartbeat history tables contain the valid data.
Workaround
None.