2 What’s New in this Release

This chapter describes the features, enhancements, and changes made to Oracle GoldenGate. Oracle updates the release notes periodically after the software release. This document is accurate at the time of publication.

2.1 New Features

This section describes the features and enhancements made to Oracle GoldenGate.

2.1.1 Release 12.3.0.1.5 - June 2018

System Requirements for Windows

Before installing Oracle GoldenGate on a Windows system, install the Microsoft Visual C ++ 2010 SP1 Redistributable Package and the Microsoft Visual C++ 2013 Redistributable Package (vcredist_x64.exe). These packages install the runtime components of Visual C++ Libraries that are required for Oracle GoldenGate processes.

To download the Visual C++ 2010 SP1 package, go to:

https://www.microsoft.com/en-us/download/details.aspx?id=13523

To download the Visual C++ 2013 package, go to:

https://www.microsoft.com/en-us/download/details.aspx?id=40784

MySQL MariaDB Support

Support for the use of the MariaDB RDBMS fork of the MySQL database was added.

2.1.2 Release 12.3.0.1.4 - May 2018

INFO EXTRACT group_name CONTAINERS
  • New command that lists the Pluggable Databases (PDBs) that are registered with a specified Extract group name.

File-based Initial Load Replication in Microservices Architecture

The Microservices Architecture fully supports initial-load replication using file-based .initial load processing.

Performance Metrics Server with the Classic Architecture

The monitoring functionality previously provided by the Manager process is now provided using the new Performance Metrics server process.

2.1.3 Release 12.3.0.1.3 - March 2018

SQL Server
  • Oracle GoldenGate 12.3.0.1.3 for SQL Server (CDC Extract) can replicate column data that contains SPARSE settings and FILESTREAM data. 

  • A new parameter TRANLOGOPTIONS QUERYTIMEOUT is added for CDC Extract (not Classic Extract) that allows setting the query timeout value in cases where Extract abends from a connection timeout condition. The values are Min (0) = Infinite, Max (2147483645), Default(30)

ENABLEMONITORING Parameter

The GLOBALS parameter ENABLEMONITORING is enhanced to add the UDPPORT and HTTPPORT options for use with the UDP mode. This allows for monitoring by Performance Metrics Server in the Classic Architecture.

Admin Client Changes

For the MA Administration Server, a new endpoint is created at /services/v2/enckeys, providing an API for generating AES encryption keys and using them to encrypt data. In addition, support for managing ENCKEYS is added to the /services/v2/config/files endpoint. The EDIT ENCKEYS, ENCRYPT PASSWORD, and VIEW ENCKEYS commands were added.

2.1.4 Release 12.3.0.1.2 - December 2017

Oracle Database
New option
The TRANLOGOPTIONS SOURCE_OS_TIMEZONE time zone option was added for Integrated Extract so that you can set the Extract to the system time zone of the source database, when the Integrated Extract is installed on a remote server of a different time zone.
DB2 z/OS
New option
The TRANLOGOPTIONS DB2ZV11COMPATIBILITYMODE option was added so that you can set the DB2 z/OS version.

2.1.5 Release 12.3.0.1.0 - August 2017 Initial Release

Oracle Database
Microservices Architecture

All APIs are accessible and available under standard Oracle GoldenGate Licensing, except for the APIs associated with the Performance Metric Service. To access the Performance Metric Service APIs, it requires additional licensing through Oracle GoldenGate Management Pack or Oracle GoldenGate Foundation Suite.

Single Service Manager per Installation

Oracle recommends that you create only one Service Manager on a system where you install Microservices Architecture to facilitate easy upgrades.

Oracle Database Sharding

Oracle GoldenGate provides a cohesive platform for a sharded Oracle Database, allowing data replication across various sharded database topologies. All the functionality of a sharded database, in addition to providing pre-configured Oracle GoldenGate replication as part of the GDSCTL DEPLOY command, is included.

Parallel Replicat

Parallel Replicat is a new variant of Replicat that applies transactions in parallel to improve performance. It takes into account dependencies between transactions, similar to Integrated Replicat. The dependency computation, parallelism of the mapping and apply is performed outside the database so it can be off-loaded to a middle-tier server. The transaction integrity is calculated and maintained within this process. In addition, Parallel Replicat supports the parallel apply of large transactions by splitting a large transaction into chunks and applying them in parallel.

Procedural Replication

Integrated Replicat has been enhanced to allow you to replicate certain Oracle-supplied PL/SQL procedures that cannot be replicated as DML or DDL. This requires that the source and target databases are Oracle Database 12c Release 2 (12.2) and later.

Automatic Conflict Detection and Resolution

You can configure and manage Oracle GoldenGate to automate conflict detection and resolution when it is configured in Oracle Database 12c Release 2 (12.2) and later.

DBA_GOLDENGATE_SUPPORT_MODE has a new value PLSQL

This view has a new value, PL/SQL.

PMSRVR Commands

The PMSRVR commands control the Performance Metrics Server.

General Features
ADD TRANDATA, INFO TRANDATA, and ADD SCHEMATRANDATA enhancements

These commands are enhanced to provide additional table handling information by adding the NOVALIDATE option:

  • Warning on object type table, xmltype table, iot table, cluster table

  • Support mode, including full support, support using fetch, or not supported

  • List of Oracle GoldenGate key columns

  • Columns and their types that caused the table to be unsupported or fetch supported

  • Fetch restrictions

  • Warning on lack of unique key

TRANLOGOPTIONS

The FETCHINLINESFLOB and VALIDATEINLINESFLOB options are added to the TRANLOGOPTIONS parameter.

The DLFAILOVER_TIMEOUT seconds option provides a configurable timeout in seconds to allow for standby database reinstatement post-role transition.

The DISABLESOFTEOFDELAY option sets the wait time that the EOFDELAY will take effect when an EOF is reported along with records to be returned.

The SUPPRESSNOOOPUPDATES option allows you to control whether no-op updates are filtered or not in Integrated Extract.

GETENV

The JULIANTIMESTAMP_PRECISE option is added to the GETENV parameter.

ALLOWNULLABLEKEYS | NOALLOWNULLABLEKEYS

The ALLOWNULLABLEKEYS | NOALLOWNULLABLEKEYS GLOBALS parameter changes the key selection logic.

ADD HEARTBEATTABLE and ALTER HEARTBEATTABLE

The TARGETONLY and NOTARGETONLY options are added to these parameters. This is available with Oracle Database only.

MAPALLCOLUMNS | NOMAPALLCOLUMNS

MAPALLCOLUMNS | NOMAPALLCOLUMNS are added as Global parameters and as an option to the MAP parameter to control whether or not Replicat obtains non-key columns.

Error Log Enhancements

You can control the ggserr.log file behavior by changing appender-ref from ggserr.Standard to one of these options:

  • ggserr.Legacy

  • ggserr.None

  • ggserr.Syslog

OUTPUTFORMAT

Use the OUTPUTFORMAT parameter to output data in text, SQL, and XML formats.

CACHEMGR

The CACHEMGR CACHEVMUSAGE option was added and returns the statistics for the virtual memory use.

SQLEXEC on Before and After Images

This functionality should work for any type of Extract or Replicat including Integrated Replicat. It allows a SQLEXEC to call the stored procedure and return the masked value for BAN, and then use that returned value in the WHERE CLAUSE similar to:

SQLEXEC (BEFOREFILTER, SPNAME MASK_COL, PARAMS (in_mask = BAN, mask_type = ‘CHARACTER’, OPTIONS = ‘N’), 

Where the return value,MASK_RESULT, returns the masked value of the BAN column. The other options are to mask it using only character data (A-Z, a-z, 0-9), and the last OPTIONS is a list of possible options, such as whether the value should be deterministic or which values to encrypt.

In processing UPDATE and DELETE statements, you want the stored procedure to take the BEFORE image of the value and use that masked value in the WHERE CLAUSE. However, Oracle GoldenGate does not do this by default, so the MOD_COMPARE_COLS option is introduced so that you can control the values that are used in the WHERE CLAUSE.The MOD_COMPARE_COLS option works similar to COLMAP except that the values for the assigned columns are used in the WHERE CLAUSE instead of as values in the actual SET clause.

IGNOREINSERTS
GETUPDATES
GETDELETES
TABLE ADM. MESSAGE_LOG, TARGET ADM. MESSAGE_LOG, 
SQLEXEC (BEFOREFILTER, SPNAME MASK_COL, PARAMS (in_mask = BEFORE.BAN, mask_type = ‘CHARACTER’, OPTIONS = ‘N’), 
COLMAP (USEDEFAULTS, pk_col = @GETVAL(MASK_COL.mask_result)),
MOD_COMPARE_COLS (BAN = MASK_COL.MASK_RESULT);

In this example, the WHERE CLAUSE for UPDATEs and DELETEs (since we are using IGNOREINSERTS) are modified to use the MASK_COL.MASK_RESULT value from the SQLEXEC statement instead of using the actual before image of the BAN column from the trail.

MySQL
  • Support for extraction and replication of DDL (data definition language) operations is introduced.

  • InnoDB now supports up to 1017 columns.

  • Support added for Capture and Delivery to MySQL Database with TDE Enabled.

  • MySQL has been certified for delivery to Amazon Aurora, which is derived from MySQL v5.6 for both a single instance and a cluster setup of Amazon Aurora.

SQL Server
  • A new change data capture (CDC)-based Extract is introduced.

  • The CDC-based Extract supports capture from SQL Server 2008 - 2016 databases enabled with TDE, and remote capture.

  • Capture from a source database configured as a Primary or readable Synchronous mode Secondary of an AlwaysOn Availability group.

  • Delivery to SQL Server 2016 targets.

  • New parameters TRANLOGOPTIONS NO and MANAGECDCCLEANUP added for SQL Server CDC Extract. MANAGECDCCLEANUP is the default and instructs the CDC Extract to check for the Oracle GoldenGateCleanup task objects.

  • For the CDC Extract, there is a new utility ogg_cdc_cleanup_setup.bat, which is used to create the Oracle GoldenGateCDC Cleanup job and associated objects, for controlling data retention in the CDC tables.

  • TLS 1.2 support has been added for Oracle GoldenGate for SQL Server, and requires the Extract to run with the new DBOPTIONS DRIVER SQLNCLI11 parameter.

  • Single user TRANLOGOPTIONS EXCLUDEUSER functionality has been added for the SQL Server Classic Extract. However, multiple excluded users are not supported.

DB2 z/OS
  • There is no longer a native DB2 z/OS build. This allows Oracle GoldenGatefor DB2 z/OS to maintain compatibility with the other platform features and significantly reduces the MIPs costs associated with running the product.

  • Extract uses stored procedures to read the transaction log.

  • AES encryption and 64–bit support is included.

  • BATCHSQL is now supported for DB2 z/OS

IBM for I
  • COLCHARSET support now functional in TABLE specifications in Extract

    TEXT data conversions significantly more efficient in Extract when writing Unicode trails

2.2 Default Behavior Changes

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

2.2.1 Release 12.3.0.1.4 - May 2018

Removed support for file to database load utilities

Oracle GoldenGate no longer supports the ability to generate data and control files for database load utilities such as SQLLOADER and BCP.

2.2.2 Release 12.3.0.1.3 - March 2018

Coordinated Replicat doesn’t do dependency calculations

Coordinated Replicat doesn't do dependency calculations for non-barrier transactions when a mapped table is partitioned based on THNREADRANGE. It relies on specified THREADRANGE columns to compute a hash value. It partitions the incoming data based on the hash value and sends all the records that match this hash value to same thread.

2.2.3 Release 12.3.0.1.2 - December 2017

The TIMESTAMP_PRECISE option is available with @GETENV ('TRANSACTION', 'TIMESTAMP_PRECISE') and @GETENV ('RECORD', 'TIMESTAMP_PRECISE')

The TIMESTAMP_PRECISE option is used with TRANSACTION and RECORD options. @GETENV ('TRANSACTION', 'TIMESTAMP_PRECISE') returns information about a source transaction, but with fraction precision. It returns the timestamp from year to microseconds. @GETENV ('RECORD', 'TIMESTAMP_PRECISE') returns the location or the Oracle rowid of a record in an Oracle GoldenGate trail file, with fraction precision. This option returns the timestamp from year to microseconds. However, depending on the database, the value can be in milliseconds with 0 microseconds.

The @GETENV COMPATIBILITY option values are from 0 to 6.
The actual values for the COMPATIBILITY option are from 0 to 6. A value of 5 means that the trail file is of Oracle GoldenGate version 12.2.0.1 and a value of 6 is for a trail file of Oracle GoldenGate version 12.3.0.1. These values are increasing as per Oracle GoldenGate versions depending on the trail file version.
The @GETENV options, TRANSACTION transaction_info, USERID, USERNAME are not valid for Pump Extract or Replicat. GGFILEHEADER is only valid for Replicat 

The @GETENV options TRANSACTION transaction_info, USERID, USERNAME work on the main Extract and not on the pump Extract and Replicat. GGFILEHEADER is valid only for Replicat.

Admin Client CONNECT command supports the ! modifier

Admin Client does not allow connecting to a server through HTTPS when the server certificate is invalid. To override this behavior, use the ! modifier with the CONNECT command. For example, when using the Admin Client to connect to the Oracle GoldenGate Microservices Architecture services that are secured with a self-signed SSL certificate, you must use a command with the ! modifier:

CONNECT https://myserver.example.org as oggadmin !

PASSTHRU and NOPASSTHRU parameters with data pump are deprecated

The PASSTHRU and NOPASSTHRU parameters in the data pump as standalone parameters indicate whether the pump is reading a trail and sending to a remote system with no further processing (PASSTHRU) or may perform some processing on the data (NOPASSTHRU). These parameters in this context only were deprecated.

2.2.4 Release 12.3.0.1.0 - August 2017 Initial Release

Supported EXTTRAIL, RMTTRAIL, EXTFILE, and RMTFILE Settings for FORMAT RELEASE with Oracle Database 12.2
When using the FORMAT RELEASE option, the following settings are supported in Oracle Database 12.2:
  • Non-CDB with compatibility set to 12.1, FORMAT RELEASE 12.2 or above is supported.

  • Non-CDB with compatibility set to 12.2, FORMAT RELEASE 12.2 or above is supported.

  • CDB/PDB with compatibility set to 12.2, only FORMAT RELEASE 12.3 is supported. This is due to the use of local undo for PDBs, which requires augmenting the transaction ID with the PDB number to ensure uniqueness of trx IDs.

Log Miner does not Support Parallelism on Oracle Database Standard Edition
Log Miner does not support parallelism because of certain restrictions in Oracle Database Standard Edition.

The default parallelism value in Oracle Database Standard Edition is 1, and if you specify a value of greater than 1, Integrated Extract abends.

Similarly for Integrated Replicat, internal apply engine does not support parallelism on Oracle Database Standard Edition. Integrated Replicat abends if a value greater than 1 value is specified.

Converting Regular Deployment to XAG Managed Deployment is Not Supported
The option to support conversion of regular deployment to XAG-managed deployment is not available. For Oracle GoldenGate Microservices Architecture, the XAG managed property needs to be specified at deployment creation time.
System Change Number

The value size is expanded from 6 bytes to 8 bytes. This is applicable to Oracle Database 12c Release 2 (12.2) and later.

Extract

Checkpointing was changed to support the 8-byte representation for both classic and integrated Extract.

Long Identifiers

Support for long identifiers limit of 128 bytes was added. This is applicable to Oracle Database 12c Release 2 (12.2) and later.

Oracle Database
  • Support for the Local Undo Oracle Database 12.2 feature, which allowed each PDB to use its own, local undo tablespace, has been added.

  • Classic capture mode when replicating a CREATE USER command using the DDL trigger was changed and now the trigger owner and the Extract login user must match.

Character Sets for Pluggable Databases

Oracle GoldenGate now provides replication support for pluggable databases with different character sets.

DB2 LUW EOFDELAY

The EOFDELAY wait time will take effect even when an EOF is reported along with records to be returned.

DB2 for i

The default behavior of a DB2 for I Extract has been reverted to convert all character data to Unicode. Extracts with multiple journals are no longer allowed by default

SQL Server (CDC Extract) ADD TRANDATA

If you encounter the following error: Could not find stored procedure 'sys.sp_cdc_parse_captured_column_list' When adding TRANDATA to an SQL Server 2016 table, you may need to install a patch related to the following SQL Server bug: SQL Server 2016 Patch

@RANGE
The @RANGE function now abends when there are missing or NULL columns.

2.3 Deprecated Features

This section describes the deprecated and no longer supported features of Oracle GoldenGate.

2.3.1 Release 12.3.0.1.2 - December 2017

USERSUBDIRS, NOUSESUBDIRS for Extract and Replicat

The parameters USERSUBDIRS, NOUSESUBDIRS have been deprecated for Extract and Replicat. 

VAMTRAILSOURCE for Teradata

The parameter VAMTRAILSOURCE has been deprecated for Teradata.  

2.3.2 Release 12.3.0.1.0 - August 2017 Initial Release

Oracle GoldenGate Director

Oracle GoldenGate Director is not supported with Oracle GoldenGate12.3.0.1 release. Use Oracle GoldenGate Studio instead.

SYSLOG

The SYSLOG parameter for GLOBALS and MGR.PRM is removed. To control where messages are written, see Using the Error Log in the Administering Oracle GoldenGate.

Reverse Utility

The reverse utility is deprecated.

INFO MARKER

The INFO MARKER command is deprecated. Extract and Replicat no longer check the marker table history from NKS source.

NOASYNCTRANSPROCESSING

The NOASYNCTRANSPROCESSING option of TRANLOGOPTIONS is deprecated. There is no default behavior change.

FORMATASCII, FORMATSQL, and FORMATXML

The new OUTPUTFORMAT parameter replaces the deprecated FORMATASCII, FORMATSQL, and FORMATXML parameters.

CACHEMGR

The CACHEPOOL n and CACHEFSOPTION { MS_SYNC | MS_ASYNC options are deprecated.

EXTFILE, EXTTRAIL, RMTFILE, RMTTRAIL

The following options of EXTFILE, EXTTRAIL, RMTFILE, and RMTTRAIL have been deprecated for Data Pump. The Data Pump writes the output trail in the same format and metadata Endian as the input source trail file:

FORMAT RELEASE for data pump Extract only is deprecated. All other uses of this option are applicable.

TRAILBYTEORDER

TRAILCHARSETUNICODE

The Extract TRAILCHARSETUNICODE parameter has been deprecated because the default behavior of a DB2 for I Extract is now reverted to convert all character data to Unicode. The character conversion efficiency has been significantly improved., however if a table must be sent without conversion, COLCHARSET(PASSTHRU) may be used on the TABLE statement.

USEANSISQLQUOTES | NOUSEANSISQLQUOTES

The GLOBALS USEANSISQLQUOTES | NOUSEANSISQLQUOTES parameters have been deprecated.