4 Bugs Fixed and Enhancements

This chapter describes the bugs fixed and enhancements at the time of release.

The Bug number is the number of the BugDB ticket. For questions on specific tickets or issues, consult Oracle Support.

4.1 Release 12.3.2.1.12 — April 2022

Upgrade of log4j 2.17.1 to address Security Vulnerability

Oracle recommends that you upgrade to this patch to include these security fixes.

Apache Commons IO Update to at least 2.7

The following security vulnerability has been fixed: CVE-2021-29425.

4.2 Release 12.3.2.1.11 — January 2022

Upgrade of log4j to address Security Vulnerability

The following security vulnerabilities have been fixed: CVE-2021-45046 and CVE-2021-44228.

Oracle recommends that you upgrade to this patch to include these security fixes.

After you have applied the patch, do the following:

  • Manually remove the older version of log4j related jar files from ggjava/resources/lib/optional​.
  • In the .properties file of the replicat or extract groups, add the following: gg.log.classpath=ggjava/resources/lib/optional/log4j-api-2.16.0.jar:ggjava/resources/lib/optional/log4j-core-2.16.0:ggjava/resources/lib/optional/log4j-slf4j-impl-2.16.0.jar​

4.3 Release 12.3.2.1.9 — July 2020

BUG 31555782 - Oracle GoldenGate for Big Data 12.3.2.1.9

This addresses internal linking library issue for AIX.

4.4 Release 12.3.2.1.8 — June 2020

BUG 31441364 - Generic replicat incurs memory leak when handling before/after image with duplicate maps.

This issue was fixed by correcting issues related to storage of records.

BUG 28065055 - Oracle GoldenGate for BigData Replicat SIGSEGV when processing GG_HEARTBEAT records

This issue was fixed by correcting the GG_HEARTBEAT table definition.

4.5 Release 12.3.2.1.7 — May 2020

BUG 31256903 - Duplicate Map - Replication to Kafka Before Values are Empty

This issue was fixed by correcting issues related to before image handling when the same source table is mapped to multiple target tables.

4.6 Release 12.3.2.1.6 — January 2020

Bug 25106122 - Possible SQL injection in Hive automated table creation.

The possible SQL injection in automated Hive table creation functionality was fixed.

30318721 - CVE-2018-11058: ORACLE SECURITY SERVICE UPGRADE

The following security vulnerabilities were fixed:

  • CVE-2018-11058
  • CVE-2016-0701
  • CVE-2016-2183
  • CVE-2016-6306
  • CVE-2016-8610
  • CVE-2018-11054
  • CVE-2018-11055
  • CVE-2018-11056
  • CVE-2018-11057
  • CVE-2018-15769

4.7 Release 12.3.2.1.5 — September 2019

BUG 30098309 - gg.schema.sortColumnsStrategy=columnName results in incorrect output values for templates where the ${primaryKeys} keyword is used

The problem of incorrect column indexing when column sorting was enabled using the configuration parameter gg.schema.sortColumnsStrategy=columnName was fixed.

BUG 29962268 - BigQuery Handler fails when target schema does not exactly match expected schema.

The functionality was improved to support mapping in target BigQuery tables where the schema does not exactly match the expected schema generated by the BigQuery Handler.

4.8 Release 12.3.2.1.4 — May 2019

Bug 29755778 - Oracle GoldenGate for Big Data 12.3.2.1.0 - 12.3.2.1.3 Initial Kerberos knit for Hadoop and HBase can intermittently fail.

Initial Kerberos authentication (kinit) can intermittently fail for access to Hadoop or HBase. The method called to perform the kinit on the Hadoop UserGroupInformation was changed to resolve this.

4.9 Release 12.3.2.1.3 — May 2019

Enh 29385960 - Delimited Text Formatter - Allow configuration of quoting character

The Delimited Text Formatter was enhanced to allow you to configure the quote character that the formatter will use for strings. The gg.handler.name.format.quoteCharacter property was added for this support.

Enh 29369088 - The Elasticsearch Handler that feeds data from Oracle GoldenGate to Elasticsearch to send the routing key to route different set of data to different shards in Elasticsearch.

The Elasticsearch Handler was enhanced to allow you to set a template to dynamically resolve the routing key at runtime to control the shard in Elasticsearch to which the message is sent. The gg.handler.name.routingKeyMappingTemplate property was added for this support.

Bug 28488882 - OCI Filewriter properly working Replicat shows SEVERE: Error message

Replicat was changed to correctly report the Oracle Cloud Infrastructure Classic Object bucket condition.

Bug 29391606 - Restore removed properties to the JMS Handler.

While changing the JMS Handler, a couple of configuration properties were inadvertently removed, which were added back to the handler.

Bug 29197228 - MongoDB Handler fails to rollback operations when transaction rollback is received

Fixed the MongoDB Handler to rollback operations when a transaction rollback is received.

Bug 29054875 - Output format to JMS topic changes after upgrading to 12.3

The XML Formatter was changed to correctly processes JMS topic changes from previous releases. Three properties were added to support this change: gg.handler.name.format.missing, gg.handler.name.format.missingAfter, and gg.handler.name.format.missingBefore.

Enh 29617633 - S3 Event Handler - Enable the use of the AWS Security Token Service

The S3 Event Handler was enhanced to allow you to access AWS credentials through the Security Token Service if you use federated Single Sign On to access AWS from your on premise environment and you cannot use AWS Identity and Access Management to generate access keys and secrets. Two properties were added to support this change: gg.eventhandler.name.enableSTS and gg.eventhandler.name.STSRegion.

Bug 29331365 - Replicat reports message repeatedly causing Replicat to report size drastic increase

A system out print line statement was removed from the ORC Event Handler so that Replicat does not bloat the size of the generated .rpt file.

Bug 29281419 - HBase - Error OGG-00453 DDL Replication is not supported for this database.

Replicat was changed to correctly process DDL MATERIALIZED VIEW statements.

Bug 27526864— Oracle: Incorrect checkpoint for Coordinated Replicat causing trail files to be purged

An issue when restarting a Coordinated Replicat pointing to an old trail file sequence number was fixed.

Bug 28649552 - Error - OGG-08203 Could not delete DB checkpoint

An erroneous DBLOGIN check in ggsci when trying to delete a Replicat process was fixed.

Bug 29507343 - Specific HP NonStop data types incorrectly converted in OGGBD.

A mapping issue when handling decimal with decimal point types from HP NonStop was fixed.

Bug 29449724 - JMS Capture AQ - Lag at checkpoint increase

The JMS reader was changed to return an EOF when the read operation doesn't return a new message.

Bug 29548820 - When issued STOP *, all groups go into ABENDED status.

Extract was changed to set the checkpoint ready status to false when processing a SQL operation record, which corrected the erroneous abended status.

Bug 29481919 - Spring Version was changed to 4.3.20 in response to Spring Security Bug CVE-2018-15756.

This security bug is for applications that depend on spring-webmvc and spring-webflux libraries. Oracle GoldenGate for Big Data has not and does not package either of these libraries nor does it depend on these libraries. It has not and does not utilize the Spring functionality containing the security vulnerability. The change is a formality.

4.10 Release 12.3.2.1.2 — January 2019

Bug 28867246 — Provide regex search and replace functionality for token keys and values

Replicat was changed so that the content replacement regex functionality is applied to token keys and values.

Bug 28754529 — File Writer Handler- Roll on metadata change not working

The File Writer Handler was enhanced so that it rolls files on a metadata change event.

Bug 28716345 — org.apache.avro.SchemaParseException: Illegal character in: RECORD.FILE

An issue with the default field names generated by metacolumns sometimes being illegal in the selected schema was fixed.

Bug 28803633 — No metacolumn support to output the transactional indicator from the source trail file.

The Flat File Writer was changed to add support for a configurable metacolumn to output the transactional indicator from the source trail file. The metacolumn syntax is ${txind}.

Bug 28819597 — File Writer Handler Replicat crashes server; fails on restart with Java exceptions

The File Writer Handler default buffer size was changed to 1024 bytes (1KB) from 5MB for a smaller memory footprint.

Bug 28476041 — Kafka REST Proxy Handler does not propagate correct schemas

The Kafka REST Proxy Handler was fixed to support sending Kafka Connect messages of different schemas to the same topic.

Bug 28797281 — Metacolumns functionality does not provide support to propagate static values.

A configurable metacolumn was added to the HDFS and Kafka Handlers to propagate a static value. The syntax is ${static[FieldName].StaticValue}.

Bug 28056315 — Kinesis Handler does not support HTTPS connectivity to proxy server.

Support for HTTPS connectivity to the proxy server for use with the Kinesis Handler and the S3 Event Handler.

Bug 28488865 — ORC Event Handler does not provide support for bloom filter fields.

The ORC Event Handler functionality was modified to add support for bloom filter fields, see ORC Configuring the ORC Event Handler.

Bug 28511829 — S3 Event Handler configuration to write encrypted to S3 bucket

The S3 Event Handler was modified to support configuration for server side encryption. You can choose ASE256 encryption, or select a encryption key or alias from the AWS Key Management System, see S3 Handler Configuration.

Bug 28543382 — File Handler may incorrectly continue processing even when configured event handlers fail initialization

The File Writer Handler was fixed so that if any Event Handler fails initialization, the File Writer Handler abends on initialization.

Bug 28507665 — Regression cause by bug-27804821 where GETUPDATEBEFORES is required

Since the Oracle GoldenGate for Big Data 12.3.1.1.5 release, Replicat does not send before images unless GETUPDATEBEFORES is specified. This mode is now the default.

Bug 28065055 — Replicat SIGSEGV when processing GG_HEARTBEAT records

Replicat was changed to handle the mapping of heartbeat tables by automatically creating the target table definition.

Bug 28486402 — EOFDELAYCSECS parameter does not work

The EOFDELAYCSECS configuration is not honored and does not have any effect in the actual EOF delay.

Bug 28901887 — WARNING OGG-10173 (rmulhbn.prm) line 41: Parsing error, parameter [map] has unrecognized keyword or extra value "(*ALL)"

Java delivery was changed to return the table name from the record header instead of from the table metadata.

Bug 28395553 — MultiMember table replicating to (*ALL) is not captured

Extract was changed to include definitions for all members of a physical file into the defs file if (*ALL) is specified.

Bug 28011195 — Port scans cause Extract and Replicat abend with an OGG-1224 Address already in use error

An issue with Extract and Replicat using port scanning software or any other program to connect to an Oracle GoldenGate process on the localhost address without using localhost was fixed.

4.11 Release 12.3.2.1.1 — August 2018

Bug 28215602 - Automatically create streams in Kinesis

Two new properties added to the Kinesis Handler to auto create Kinesis streams, gg.handler.name.enableStreamCreation and gg.handler.name.shardCount.

Bug 28195145 - Initial load process JVM crashes on Linux x86-64

Replicat was changed to handle NULL CSN and XID values.

Bug 28079597 - PURGEOLDEXTRACTS not working correctly

Changed how PURGEOLDEXTRACTS operates so that all rules are added to the trail to process when there is no checkpoint in the installation.

Bug 27804821 - Update before image token not showing up in Kafka

The Kafka Handler was changed to use the mapped and target before record to populate the before values.

4.12 Initial Release 12.3.2.1.0 — May 2018

Bug 27525525 - Replicat issues with trail checkpoint and 9-digit trail sequence

Replicat was changed to correct an abend leading to an inconsistent checkpoint file, which caused a problem positioning upon restart. One of the symptoms of this issue is that the Replicat mistakenly assumes that it should reposition to a 6-digit sequence number rather than 9-digit.

Bug 27299518 - SQL is replicated as binary (base64) instead of string

The Kafka Handler was corrected so that a uniqueidentifier column is replicated to the target as a base64 string.

Bug 26957243 - CVE-2017-5645: APACHE LOG4J UPGRADE TO 2.9.1

Due to security issues in log4j component, the log4j version was upgraded to log4j 2.9.1.

Bug 26851391 - File Writer Handler - Target data missing Operation counts

The File Writer Handler was changed to count of operations be provided on data files written to HDFS to provide assurance that all records are processed. This is for an ELT scenario.

Enh 25677977 - Enhancement request to correct the DateString format from operation.getTimestamp

Enh 25289618 - Change the HDFS Handler’s timestamp format to `yyyy-mm-dd hh:mm¿ 

Enh 24704644 - Where does "op_ts" milliseconds in time stamp value comes from? 

With the HDFS Handler, the timestamp data output format is exactly how it is represented in the trail record. The handler was changed so that you can consolidate all of the timestamp output format using the gg.format.timestamp property. The value of this property must follow the specification described in:

https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html.

Bug 27012878 — ReverseProxySettings application has two new parameters

The ReverseProxySettings application has two new parameters in Oracle GoldenGate version 12.3.0.1 and later:
  • -P: Password for Service Manager account

  • -u: Name of Service Manager account to use

Doc 27033479 — New option, SQLMODE, is added for the DBOPTIONS parameter

The SQLMODE option is added for the DBOPTIONS parameter. When this option is enabled, the sql_mode variable is set to ‘ANSI_QUOTES’.

Doc 27061717 — Oracle: Replicat issues replicating TIMESTAMP (6) with TIMEZONE

The daylight saving time adjustment issue when UTC timestamp value converted from local timestamp hits daylight saving time transition period was fixed. From standard time to daylight saving time 1 hour window. Replicat applies timestamp value 1 hour off from expected value.

Bug 26742447 — SQL Server: Replicat abends with OGG-10124 parsing error for REPERROR value

The REPERROR option allowed 1-7 digits of error code only, whereas the SQL Server error code contains 10 digits. To fix this, the regular expression was modified to accumulate 10 digits of SQL Server error code.

Bug 27964981 — Oracle: Extract writes number of bytes > max length for the column to the trail file

An issue with Extract data in the trail file was incorrect when the VARCHAR size is more than 32767 bytes was fixed.

Bug 27078084 — Oracle: Integrated Extract captures all columns for delete operations

Fixed as issue where Replicat fails with errors like OGG-01163 Bad column length (nnnn) specified for colum xxxx. This issue occurs because the database NLS_CHARACTERSET is AL32UFT8 and NLS_NCHAR_CHARACTERSET is UTF8. NVARCHAR2 has a byte limit of 4000 bytes. For UTF8, 4000 chars is equal to 4000 bytes. However, Oracle GoldenGate stores NVARCHAR2 in the trail as UTF16, which causes it to expand it to 8000 bytes.

Bug 28043789 — Oracle: @DATE function with @COMPUTE does not work

An issue where the DATE() failed if used as an argument of another column mapping function was fixed.

Bug 26869744 — Oracle: Extract Truncating The Column Data When Used with Coltest

An issue with mapping functions truncating numbers that have more digits than the number of bytes needed to store the target number was fixed

Bug 27701581 - Increase the upper limit of the DBOPTIONS parameter options LOBBUFSIZE and XMLBUFSIZE

The upper limit for LOBBUFSIZE and XMLBUFSIZE was increased from 10485760 to 104857600.