7 Oracle GoldenGate Veridata Server Configuration Parameters

Learn how to use parameters to adjust different aspects of the sort memory configuration when using server-side sorting.

This chapter includes the following sections:

7.1 Overview of the Server Memory

The amount of memory that can be used by the sort sorting process cannot be greater than:

  • The size of the memory mapped file, if using memory mapped file for sorting by setting the server.mapped_sort_buffers parameter to true in the veridata.cfg file.
  • java -Xmx memory setting, if using java heap for sorting by setting the server.mapped_sort_buffers parameter to false in veridata.cfg file.

7.2 Estimating Memory Usage

The maximum amount of memory available to Oracle GoldenGate Veridata is specified by the Java boot option -Xmx. When the server-side sorting is used, a large portion of this memory is reserved for sorting during comparisons.

The server.max_sort_memory of server parameter from the veridata.cfg file is used to calculate the maximum memory usage of the sorting. Therefore, ensure that the Java -Xmx value configured is larger than the sorting memory usage.

7.3 How to Set a Parameter

To set a parameter, edit its entry in the veridata.cfg file. This file is stored in the DOMAIN_HOME/config/veridata directory within the Oracle GoldenGate Veridata Server installation directory.

Open an Oracle service request before changing these parameters.

7.4 Parameter Descriptions

This section describes the parameters that can be set in the veridata.cfg file. These parameters are grouped under the following categories:

7.4.1 Server Parameters

This section defines the following configurable parameters for your Oracle GoldenGate Veridata Server:

7.4.1.1 database.hash

Defines whether or not the data hashing is done in the database. It can be used to improve the data-fetch performance.

Syntax

database.hash = [true|false]

Default Value

false

Note:

This parameter is currently supported for the Oracle database only.

Example

database.hash = false
7.4.1.2 max_lob_key_len

This parameter sets the maximum length of LOB data types that can be used as key columns in Oracle GoldenGate Veridata. A positive integer enables the use of LOB data types as key columns. Note that this feature is currently only supported for Postgres' citext datatype. A value of zero disables this feature. The parameter value is measured in bytes, and must be within the range of 1 to 8000. If the size of the data in the table exceeds the defined value, then Oracle GoldenGate Veridata throws an exception and the job fails.

Syntax

max_lob_key_len = <length_of_lob_datatypes>

Default Value

0

Example

max_lob_key_len 1
7.4.1.3 server.concurrent.readers

This parameter specifies the number of reader threads for the entire server.

Syntax

server.concurrent.readers number

Example

server.concurrent.readers 0

Default Value

The maximum of 4 or one quarter of the number of available CPUs.

7.4.1.4 server.concurrent.writers

This parameter specifies the number of writer threads per sort directory.

Syntax

server.concurrent.writers number

Example

server.concurrent.writers 0

Default Value

The maximum of 4 or one quarter of the number of available CPUs.

7.4.1.5 server.convert_empty_to_null

If server.convert_empty_to_null = false, then Oracle GoldenGate for Veridata does not consider the implicit behaviour of compares empty (zero byte string) versus NULL (no space handling) to be insync

If server.convert_empty_to_null = true, then Oracle GoldenGate Veridata compares empty (zero byte string) versus NULL (no space handling) to be insync. In this is not comparison format dependent, then one side should be Oracle and char, varchar, nchar, nvarchar, raw, clob, nclob, and blob datatypes of Oracle for which, this parameter is implicit. .

Syntax

server.convert_empty_to_null = [true|false]

Default

true

Example

server.convert_empty_to_null = true
7.4.1.6 server.mapped_sort_buffers

Indicates whether sort buffers are allocated as a memory mapped file or allocated on the JVM heap.

Syntax

server.mapped_sort_buffers [true|false]

Example

server.mapped_sort_buffers true

Default Value

The default is true. If an error occurs during initialization, Oracle GoldenGate Veridata uses the JVM heap.

7.4.1.7 server.max_concurrent_comparison_threads

Sets the maximum number of concurrent comparisons that can be executed. You can lower this number to reduce the impact of the server on your system. When this limit is reached, no new comparisons, starts until an active comparison completes.

Syntax

server.max_concurrent_comparison_threads {default | number}
  • default : 100 threads

Example

server.max_concurrent_comparison_threads 100

Default Value

The default value is the maximum of four or the number of available CPUs.

7.4.1.8 server.max_concurrent_jobs

This parameter specifies the maximum number of jobs that can be run simultaneously.

Syntax

server.max_concurrent_jobs number_of_jobs

Example

server.max_concurrent_jobs 200

Default Value

100

7.4.1.9 server.max_sort_memory

Sets the maximum amount of sort virtual memory that is available to all running comparisons that use server-side sorting. The value of this parameter varies depending on the value of server.mapped_sort_buffers.

Syntax

server.max_sort_memory {default | number{M | m}}
default is illustrated in the follows:
  • When server.mapped_sort_buffers is set to true, the default value is 2 GB. The maximum number supposed to enter is the maximum size of the memory mapped file.
  • When server.mapped_sort_buffers is set to false, the default value is the JVM available heap size minus 200 MB, which is allocated for basic tasks. The maximum number supposed to enter is the value of java -Xmx.

Example

server.max_sort_memory 1000M

Default Value

The system calculates the default size based on the available virtual memory.

7.4.1.10 server.memory_mapped_sort_directory

This parameter specifies the directory path where .map files are generated. By default it uses temp directory of the operating system.

Syntax

server.memory_mapped_sort_directory directorypath

Example

server.memory_mapped_sort_directory directorypath/tmp2
7.4.1.11 server.meta_session_handle_timeout

This parameter defines the meta-session handle timeout in seconds.

Syntax

server.meta_session_handle_timeout seconds

Example

server.meta_session_handle_timeout 600

Default Value

900

7.4.1.12 server.persistence_db_type

This parameter defines the persistence database type.

Syntax

server.veridata_data database_type

where database_type is the persistence database type. The options are:

  • ORACLE_OCI

  • MS_SQL

Default Value

ORACLE_OCI

Example

server.veridata_data MS_SQL
7.4.1.13 server.veridata_data

The directory that contains Oracle GoldenGate Veridata reports.

Syntax

server.veridata_data path

where path is a relative or absolute path for the directory where Veridata reports will be stored.

Note:

If you specify a relative path for the data directory, you need not start the path with a forward (/) or backward (\) slash. The path will be relative to the Veridata domain home directory.

Default Value

/veridata/reports

Example

server.veridata_data /veridata/reports

That means the default data directory is VERIDATA_DOMAIN_HOME/veridata/reports.

7.4.1.14 socket.timeout.mins
This is used to set the timeout (in minutes) for inactive sockets.

Syntax

socket.timeout.mins <minutes>

Default Value

0

Example

socket.timeout.mins 0
7.4.1.15 truncate_spaces_len

Use the truncate_spaces_len parameter to control the length of truncated trailing spaces in a String or Binary column. Space (U+0020) and Ideographic Space (U+3000) are the truncate targets.

You can disable the truncate feature with the Truncate Trailing Spaces When Comparing Values parameter of the Connection Settings tab in the Oracle GoldenGate Veridata UI of the connection configuration.

This parameter also truncates the column padding character if the padding character is one of the target spaces.

If the value equals 0, then all spaces are trimmed. For example, data = "".

If the value equals 1, then at least one space gets retained. For example data = " ".

Syntax

truncate_spaces_len <number_of_trailing_spaces>

Default Value

0

Example

truncate_spaces_len 0

7.4.2 Parameters for Configuring SSL Communication

This section defines the parameters that you can use to configure SSL communication between your Oracle GoldenGate Veridata Server and Veridata Agents:

7.4.2.1 server.useSsl

This parameter specifies whether SSL is enabled for communication between the Veridata Server and all Veridata Agents.

Syntax

server.useSsl [true|false]

Example

server.useSsl true

Default Value

The default value is false.

7.4.2.2 server.ssl.client.allowTrustedExpiredCertificates

If the value of this parameter is set to true, Veridata Server allows SSL communication between the agent and the server when a trusted certificate expires.

Note:

The parameter is not applicable if you are running IBM's JVM.

Syntax

server.ssl.client.allowTrustedExpiredCertificates [true|false]

Example

server.ssl.client.allowTrustedExpiredCertificates false

Default Value

The default value is true.

7.4.2.3 server.ssl.client.identitystore.keyfactory.alg.name

This parameter specifies a name for the identity store key factory algorithm used for SSL communication.

Syntax

server.ssl.client.identitystore.keyfactory.alg.name=algorithm_name

Example

server.ssl.client.identitystore.keyfactory.alg.name=IbmX509

If you are running on IBM's JVM, set the value to IbmX509.

Default Value

The default value is SunX509.

7.4.2.4 server.ssl.client.truststore.keyfactory.alg.name

This parameter specifies a name for the trust store key factory algorithm used for SSL communication.

Syntax

server.ssl.client.truststore.keyfactory.alg.name=algorithm_name

Example

server.ssl.client.truststore.keyfactory.alg.name=IbmX509

If you are running on IBM's JVM, set the value to IbmX509.

Default Value

The default value is SunX509.

7.4.2.5 server.ssl.algorithm.name

This parameter specifies algorithm used for SSL communication.

Syntax

server.ssl.algorithm.name=algorithm_name

Example

server.ssl.algorithm.name=TLS

Default Value

The default value is TLS.

7.4.3 Parameters for Veridata Command-Line Utility

This section defines the following configurable parameters for your Oracle GoldenGate Veridata Server:

7.4.3.1 veridata.cli.run_from_managed_server

To run the Veridata command-line utility from the Veridata Managed Server, set this parameter value to true.

Syntax

veridata.cli.run_from_managed_server [true|false]

Example

veridata.cli.run_from_managed_server false

Default Value

The default value is true.

7.4.3.2 veridata.cli.server.listenAddress

This parameter specifies the listening address of the host machine for the Veridata Managed Server.

Syntax

veridata.cli.server.listenAddress host

Example

veridata.cli.server.listenAddress host.example.com

Default Value

The default name of the managed server is localhost.

7.4.3.3 veridata.cli.managed_server_name

This parameter specifies the name of the Veridata Managed Server.

Syntax

veridata.cli.managed_server_name server

Example

veridata.cli.managed_server_name VERIDATA_server2

Default Value

The default name of the managed server is VERIDATA_server1.

7.4.3.4 veridata.cli.server.timeout.seconds

This parameter specifies the time period (in seconds) Veridata CLI should wait for the JMX Server to respond to a CLI request.

Syntax

veridata.cli.server.timeout.seconds seconds

Example

veridata.cli.server.timeout.seconds 90

Default Value

The default time-out is 60 seconds.

7.4.4 Parameters for Report File Encryption

This section defines the configurable parameters used for report file encryption:

7.4.4.1 server.encryption

When this parameter is set to true, the comparison report artifacts will be encrypted. Otherwise, the report contents will be in clear text.

Syntax

server.encryption=[true|false]

Example

server.encryption=false

Default Value

The default value is false.

7.4.4.2 server.encryption.bits

This parameter specifies the strength of the encryption algorithm. Valid values are 128, 192, and 256. If set to a value other than 128, you must install Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files.

Syntax

server.encryption.bits=[128|192|256]

Example

server.encryption.bits=128

Default Value

The default value is 128.

7.4.5 Parameters for Email Notifications and Alerts

To send email notifications, Oracle GoldenGate Veridata can connect to an outgoing Simple Mail Transfer Protocol (SMTP) server. The SMTP server needs to be configured so it does not require password credentials.

If password is required, then see mail.from.

This topic describes the parameters required for email notifications and alerts:

7.4.5.1 mail.enabled

When this parameter is set to false, the email notifications are turned off.

Syntax

mail.enabled=[true|false]

Example

mail.enabled=false

Default Value

The default value is false.

7.4.5.2 mail.alert.only

When this parameter is set to false, Oracle GoldenGate Veridata sends a notification email when a job is completed. If it is set to true, then Veridata only sends an alert email when out of sync or failure are encountered.

Syntax

mail.alert.only=[true | false]

Example

mail.alert.only=true

Default Value

The default value is true.

7.4.5.3 mail.smtp.server

Syntax

mail.smtp.server=<server_address>

Example

mail.smtp.server=smtp.host.com
7.4.5.4 mail.smtp.port

Syntax

mail.smtp.port=<port_number>

Example

mail.smtp.port=25
7.4.5.5 mail.smtp.connection.ssl.tls

The mail.smtp.connection.ssl.tls parameter is used to access mail server over SSL or TLS connection.

Syntax

mail.smtp.connection.ssl.tls= [true|false]

Default Value

false

Example

mail.smtp.connection.ssl.tls=true
7.4.5.6 mail.from

This parameter is a username created on SMTP server that does not require a password authentication. If password is required, create a generic user with default password Ver!data1234 (case sensitive).

Syntax

mail.from=<email_address>

Example

mail.from=john@mail.com 
7.4.5.7 mail.to

The mail.to parameter is used to send emails to one or multiple users. Use a comma as a separator between email IDs.

Syntax

mail.to=<email_address(es)>

Example

mail.to=john@mail.com,mary@mail.com,ross@mail.com

7.4.6 Server Parameters for Oracle Streams Tagging

Oracle GoldenGate Veridata tags the repair transaction using Oracle Stream API. Following properties are added as server parameters to customized the tags behavior:

7.4.6.1 repair.oracle.tag.enable

This parameter enables tagging of Repair session in the redo logs.

Valid only for Oracle Database.

Syntax

repair.oracle.tag.enable = false
Value can be either true or false.

Default Value

true
7.4.6.2 repair.oracle.tag

This parameter is the tag value of Repair session in the redo logs.

Valid only for Oracle Database.

Syntax

repair.oracle.tag = 00

Value can be up to 2000 hexadecimal digits (0-9A-F) or the plus sign (+).

Default Value

00

7.4.7 Server Parameters for Confirm Out-of-Sync Fetch Strategy

Following properties are added as server parameters to customize the tag's behavior:

7.4.7.1 coos.join.strategy

This parameter enables you to select columns for creating compare pairs.

Internally, COOS with JOIN uses creation of temporary table. For this you need CREATE TABLE, CREATE TABLESPACE and INSERT/UPDATE/DELETE privileges.

Syntax

#coos.join.strategy =    coos.join.strategy = nokey

Value can be nokey, always, or never.

Description

nokey - Use COOS Join strategy only when Use all columns as Key columns (there is no primary or unique constraint on the table) is used to select key columns for the compare pair. All columns as key columns in the compare pair exception XML, UDT and Lobs.

always - Use COOS Join always for COOS step.

never - Don't use COOS Join for COOS Step.

Default Value

nokey