We're here to help!

Internal Variables

Follow

Internal variables are denoted by _ (underscore character), e.g. "_INT_SETTING". 

Changing these variables will in most cases require a restart of the affected process. If in doubt as to the affected process, restart both MINE and APPLY processes.


Internal VariableDescription
_APPLY_COUNT_LOOKAHEAD_READ

Default value 100000. This parameter sets the value at how many LCRs (Logical Change Records) are read while waiting for user resolution of conflict handlers: RETRY, PAUSE, ABORT.

Parameter change needs a process restart: APPLY.

_APPLY_COUNT_LOOKAHEAD_READ_FASTFAIL

Default value 50. This parameter sets the value at how many LCRs (Logical Change Records) are read while waiting for conflict handlers set to DISCARD, OVERWRITE and FORCE.

Parameter change needs a process restart: APPLY.

_APPLY_DRIVER
  • AUTO (default)
  • OCI
  • PERL

Set the Database driver for the APPLY process on Oracle. By default it is using the OCI driver when applying to Oracle.

When the DBI Perl driver is being used for the APPLY process on Oracle then the internal variable _APPLY_OCI_PASSTHROUGH_TYPES must be set to NO to force conversion of the binary bind representation to ascii strings.

The Oracle OCI driver executes SQL at the APPLY Oracle db with no Perl interaction and the OCI driver is directly binding the binary representation whereas the Perl driver does not understand the Oracle internal binary representation and needs a converted string representation.

Parameter change needs a process restart: APPLY.

_APPLY_OCI_PASSTHROUGH_TYPES
  • YES (default)
  • NO

Pass values to APPLY SQL as-is instead of converting them to strings and using to_number/to_date on the result. Value YES improves APPLY speed, value NO can lead to value conversions if the source value is invalid. Applies for OCI only and currently for DATE/NUMBER only. This applies to number values with excessive decimal places and completely invalid date values (such as 0000-00-00 00:00:00). If the source has invalid dates, then set to YES.

Parameter change needs a process restart: APPLY.

_APPLY_MAX_RETRY_COUNT

How many times should APPLY try to run the conflicting SQL before the process is paused. Default value 3.

Parameter change needs a process restart: No.

_APPLY_PLOG_CHECK_FATAL

Disable checksum checking when transferring PLOG file from source to target servers.

Parameter change needs a process restart: No.

_ADD_SUPLOG

Adjusts the behaviour of adding supplemental log to the database during the setup.

  • AUTO (default): 10/11g checks if PK suplog exists and does not run the DDL if it does
  • NO: ignore all requests for suplog
  • YES: skip the check
  • For 9i the YES and AUTO are the same: enable suplog on all columns that are eligible (=not LOBs etc) and are not yet in a unconditional suplog group.
  • 9i does allow multiple log groups with same columns, so this tries to prevent reruns of -all.sh from creating duplicate groups.

Parameter change needs a process restart: No.

_APPLY_THREAD_MEM_ACCOUNTING
  • NO (default)
  • YES

Set to YES to turn on extra memory counting for support purposes. It incurs overhead as it adds 16 bytes to each allocation. Negative counts may be possible when the data is read before applier is actually allocated.

Parameter change needs a process restart: APPLY.

_APPLY_THREAD_MEM_ACCOUNTING_ON_APPLIER_SHUTDOWN
  • NO (default)
  • YES

Set to YES to automatically dump information into the trace file on each applier(=transaction) close. Negative counts maybe possible when the data is read before applier is actually allocated.

Parameter change needs a process restart: APPLY.

_DDL_REPLICATE_PARTITIONS

Controls whether Replicate will allow the DDL relating to partitions to propagate.
TRUNCATE partition and EXCHANGE partition works when _DDL_REPLICATE_PARTITIONS is set to YES, replicate partition-related DDL will be replicated only if this setting is set.  Partition names cannot be system generated

  • NO (default)
  • YES

Parameter change needs a process restart: No.

_DEFAULT_HANDLER_UPDATE_NO_DATA

Default value for UPDATE on NO_DATA conflict. This value is used when there is no conflict handler defined for a given table. It is also used by UNSET_CONFLICT_HANDLERS command.

  • DISCARD
  • FORCE
  • OVERWRITE
  • RETRY (default)
  • PAUSE
  • ABORT
  • ERROR

Parameter change needs a process restart: No.

_DEFAULT_HANDLER_UPDATE_TOO_MANY

Default value for UPDATE on TOO_MANY conflict. This value is used when there is no conflict handler defined for a given table. It is also used by UNSET_CONFLICT_HANDLERS command.

  • DISCARD
  • FORCE
  • OVERWRITE
  • RETRY (default)
  • PAUSE
  • ABORT
  • ERROR

Parameter change needs a process restart: No.

_DEFAULT_HANDLER_UPDATE_ERROR

Default value for UPDATE on ERROR conflict. This value is used when there is no conflict handler defined for a given table. It is also used by UNSET_CONFLICT_HANDLERS command.

  • DISCARD
  • FORCE
  • OVERWRITE
  • RETRY (default)
  • PAUSE
  • ABORT
  • ERROR

Parameter change needs a process restart: No.

_DEFAULT_HANDLER_DELETE_NO_DATA

Default value for DELETE on NO_DATA conflict. This value is used when there is no conflict handler defined for a given table. It is also used by UNSET_CONFLICT_HANDLERS command.

  • DISCARD
  • FORCE
  • OVERWRITE
  • RETRY (default)
  • PAUSE
  • ABORT
  • ERROR

Parameter change needs a process restart: No.

_DEFAULT_HANDLER_DELETE_TOO_MANY

Default value for DELETE on TOO_MANY conflict. This value is used when there is no conflict handler defined for a given table. It is also used by UNSET_CONFLICT_HANDLERS command.

  • DISCARD
  • FORCE
  • OVERWRITE
  • RETRY (default)
  • PAUSE
  • ABORT
  • ERROR

Parameter change needs a process restart: No.

_DEFAULT_HANDLER_DELETE_ERROR

Default value for DELETE on ERROR conflict. This value is used when there is no conflict handler defined for a given table. It is also used by UNSET_CONFLICT_HANDLERS command.

  • DISCARD
  • FORCE
  • OVERWRITE
  • RETRY (default)
  • PAUSE
  • ABORT
  • ERROR

Parameter change needs a process restart: No.

_DEFAULT_HANDLER_INSERT_ERROR

Default value for INSERT on ERROR conflict. This value is used when there is no conflict handler defined for a given table. It is also used by UNSET_CONFLICT_HANDLERS command.

  • DISCARD
  • FORCE
  • RETRY (default)
  • PAUSE
  • ABORT
  • ERROR

Parameter change needs a process restart: No.

_DEFAULT_HANDLER_TRANSACTION_ERROR

Default value for TRANSACTION on ERROR conflict. This value is used when there is no conflict handler defined for a given table. It is also used by UNSET_CONFLICT_HANDLERS command.

  • DISCARD
  • RETRY (default)
  • PAUSE
  • ABORT
  • ERROR

Parameter change needs a process restart: No.

_DELETE_OBSOLETE_PLOGS

Set this to NO to turn off the housekeeping of the PLOG files.

  • YES (default)
  • NO

Example to stop the automatic removal of PLOG files on APPLY:

set APPLY._DELETE_OBSOLETE_PLOGS NO

Parameter change needs a process restart: No.

_DELETE_OBSOLETE_RLOGS 

Set this to NO to turn off the housekeeping of the redo log files transferred from the Fetcher process to the mine_stage directory on the MINE server.

  • YES (default)
  • NO

Parameter change needs a process restart: No.

_DELETE_OBSOLETE_DEBUG

  • NO (default)
  • YES

Turns on debugging for housekeeping of PLOG and redo logs. Extra information will appear in the MINE and or APPLY log files which indicate why PLOGS or redo logs have been deleted or not.

Example of debugging information is:

2013/11/28 10:16:43 INFO> Redolog file /home/oracle/d112F/mine_stage/o1_mf_1_45897_99dph3dl_.arc eligible (1) for deletion; size 0<524288000, age 2532<3600
2013/11/28 10:16:43 INFO> Redolog file /home/oracle/d112F/mine_stage/o1_mf_1_45897_99dph3dl_.arc eligible (2) for deletion; size 0<524288000, age 2532<3600
2013/11/28 10:16:43 INFO> Redolog file /home/oracle/d112F/mine_stage/o1_mf_1_45898_99dph6gh_.arc eligible (1) for deletion; size 0<524288000, age 2531<3600
2013/11/28 10:16:43 INFO> Redolog file /home/oracle/d112F/mine_stage/o1_mf_1_45898_99dph6gh_.arc eligible (2) for deletion; size 0<524288000, age 2531<3600

Parameter change needs a process restart: No.

_DPUMP_SKIP_MODE_ENABLED

Skip replicating records being inserted by datapump with jobname beginning with DP_ddcname

  • YES (default)
  • NO

The program name must begin with ORACLE or oracle and contain DW or udi.

Parameter change needs a process restart: MINE.

_ENABLE_5_19_PARSE 

Enables or disables processing of auditing information. This information is used by CDC/Audit function or by querying the DBRSAPPLY_PKG package on the target database (e.g. in triggers).

This information includes source sid, serial#, transaction id, os user, os machine, login name.

  • YES: (default) enables this information
  • NO: disables this information

Setting this to NO can improve the performance of the MINE process.

Only change this setting once Dbvisit Replicate initialization has been completed. If not then the message "MINE IS running, initialization NOT yet complete." will not disappear

Parameter change needs a process restart: MINE.

_EXIT_CONDITION

Specify if both online redo logs and archive logs should be use or archive log only (archivelogs only) files exclusively.

  • FOREVER (default, use both online redo and archive logs)
  • ARCHONLY (use only archive logs)

Set this in the *MINE.ddc only.

Parameter change needs a process restart: MINE.

Deprecated in 2.6.0.4. See MINE parameter  REDO_READ_METHOD.

_FORCE_LD_PATH_ALL

If set to yes, we add ORACLE_HOME (which is set in DDC to ASM home if ASM is used) to front of LD_LIBRARY_PATH. This forces use of Oracle libraries in ASM home, instead of the Oracle Instant Client bundled within dbvrep. This parameter is typically not needed for RedHat or Oracle Linux installs. Suse Linux typically requires this.

Parameter change needs a process restart: ALL.

_FORCE_LD_PATH_SYSDBA

If set to yes, we add ORACLE_HOME (which is set in DDC to ASM home if ASM is used) to front of LD_LIBRARY_PATH. This forces use of Oracle libraries in ASM home, instead of the Oracle Instant Client bundled within dbvrep. This parameter is typically not needed for RedHat or Oracle Linux installs. Suse Linux typically requires this. This is for as sysdba connections only (which is used only for connection to ASM instances).

Parameter change needs a process restart: ALL.

_LOG_ERRORS_TO_DATABASE

Log errors to the Dbvisit Replicate data dictionary. Values are:

  • YES
  • NO(default)

Parameter change needs a process restart: No.

_MINE_ADD_ROWID_TO_PLOG

Mine can add the ROWID information, as pointer to the row being replicated, to the plog. By default this is disabled. Values are:

  • YES
  • NO (default)
_MINE_ADD_TRAILING_NULLCOLS_ON_UPDATE_FORCE

Ensure that you are also adding supplemental logging on ALL columns. Any columns that are not present are thus either non-loggable, or trailing NULLs. Replicate will add all trailing NULLs for updates when the value is set to yes. Values are:

  • YES
  • NO (default)

In order to avoid conflicts on replicate internal tables, it is necessary to enable supplemental logging also on following 3 tables:

alter table DBVREP.DBRSCOMMON_HEARTBEAT add supplemental log data (ALL) columns;
alter table DBVREP.DBRSOBJ$ add supplemental log data (ALL) columns;
alter table DBVREP.DBRSUSER$ add supplemental log data (ALL) columns;

Parameter change needs a process restart: MINE.

_MINE_AUTO_PREPARE_BY_NAME_STORE

Keep list of prepared tables' names.

  • NO (default)
  • YES

Parameter change needs a process restart: No.

_MINE_AUTO_PREPARE_BY_NAME_USE

Use the list of prepared tables' names.

If both store and use are set to YES, then if you drop a prepared table and create a new with the same name, it will be automatically prepared.

  • NO (default)
  • YES

Parameter change needs a process restart: No.

_MINE_DETECT_DUPLICATES_IN_ASSEMBLY

Workaround for incorrect row assembly - if we detect the same column twice, we split it into two LCRs.

  • YES
  • NO (default)

Parameter change needs a process restart: MINE.

_MINE_FIX_INVALID_DATA

Check date values for various types of invalid data and replace with new value. Values:
 1: zeroes at invalid places: year 0, month 0, day 0, hour -1, minute -1 or second -1.
[no further checks implemented now]

Parameter change needs a process restart: MINE.

_MINE_FIX_INVALID_DATE_NEW_VALUE

String representation of hex value to be used as the new value if DATE is found to be invalid. Can be empty (=NULL) or 7 bytes (=14 hex chars) of the new value. Use dump(datecol,16) to get the desired value. Do not use dump(PL/SQL expression,16), this gives different representation of date value. Please see Dealing with invalid dates for a full example of how this value works.

Parameter change needs a process restart: MINE.

_MINE_KEY_IMAGE_ON_PK_UPDATE

Continue treating the Primary Key as a primary key and not as OLD/NEW values. Setting this value to NO will often break Conflict Handlers that have Primary Key updates.

  • NO
  • YES (Default)

Parameter change needs a process restart: MINE.

_MINE_KEY_IMAGE_PREFER_SUPLOG

Setting the parameter to YES, means that it will look for manually set supplemental log groups. No means it will look for Primary Key or Unique key groups.
Default: NO. Use YES only if users want to control supplemental groups manually and they should override any existing PK/UQs.

      • NO (Default)
      • YES

Parameter change needs a process restart: MINE.

_MINE_KEY_IMAGE_WITH_ALL_LOGGING

If a user selects to supplementally log all columns (sets _PREPARE_SUPLOG_TYPE=ALL), this parameter determines how those columns should be treated. If set to YES then all supplemental Logging columns would be treated as the Primary Key. (Which could make the usefulness of overwrite/force conflict handlers obsolete for these records)

  • NO
  • YES (Default)

Parameter change needs a process restart: MINE.

_MINE_PESSIMISTIC_COMMIT

Determines whether pre-commit (optimistic commit model) or committed transactions only (pessimistic commit) are written to the PLOGs.

  • NO (Default)
  • YES

Parameter change needs a process restart: Cannot be changed in an existing replication. New run of *-all.sh is required.

_MINE_RAC_SKIP_THREADSIf one (or more) of the instances are down in an RAC environment, this parameter allows MINE to start and will only work on the instances that are up.
  • Comma separated list of redo threads that MINE will ignore. The redo thread is gather from THREAD# is v$log, v$thread, etc.

Parameter change needs a process restart: No.

_MINE_REPORT_INVALID_DATASame as _MINE_FIX_INVALID_DATA, but governs printing to log, not the actual value change. Values are:
  • 1 (prints the warning to the log)
  • 0 (disables the printing of warnings to the log)

Parameter change needs a process restart: MINE.

_MINE_UPDATE_RBA_ON_VOID
  • NO (Default)
  • YES

Specific for RAC source database. Setting to YES ensures threads are synched in the correct order.

Setting can create MINE gap up to _MINE_FORCE_LOGSWITCH_IDLE_TIME (180s) on an idle database

Parameter change needs a process restart: parameter is obsolete and not used.

 _MINE_WRONG_ORDER_FATAL

Debug RAC thread merging. Makes the error "Tried to write SCNs in wrong order" a fatal one.

  • NO
  • ARCHONLY
  • ALL

Parameter change needs a process restart: MINE.

 _NETWORK_TRAFFIC_DEBUG
  • 1 Turn on debugging
  • 0 Turn off debugging

To set use the following command from the Dbvisit Replicate command console:

dbvrep> engine mine send memory_set _NETWORK_TRAFFIC_DEBUG 1


Enable network traffic debugging. Useful for Dbvisit support when PLOG files are not being transferred consistently from MINE to APPLY.

Turn on the debugging for about 1 hour and then upload the MINE log file to Dbvisit support.

The following messages in the APPLY log are indication of network issues:

INFO> PLOG 699697 not yet available. 
INFO> Contacting mine to switch logs. 
WARN> WARN-4502: Timeout waiting for incoming data (timeout 300s) - get command.

Parameter change needs a process restart: No.

_NOTIFY_ENABLE

Set to NO to disable notifications. This disables all smtp (mail) and snmp notifications.

Parameter change needs a process restart: ALL.

_PREPARE_SUPLOG_TYPE

Controls the supplemental logging parameter. The default of PK will set supplemental logging to just include the Primary Key. The value of ALL will be ALL available columns that can have supplemental logging. (ie except for columns that don't allow it BLOB, CLOB, etc).

  • PK (default)
  • ALL

Parameter change needs a process restart: No.

_SUBPROFILER

In some cases, sub profiling can also be enabled to obtain finer grained profiling information.

Profiling needs to be enabled before sub profiling can be turned on. Please see Dbvisit Replicate Profile Performance Statistics

To turn on sub profiling:

_SUBPROFILER=YES

Parameter change needs a process restart: No. (obsolete on fetcher and mine)

_TCP_CONNECT_TIMEOUT

How long to wait for connection until timeout.

Default is 60 seconds.

If the following message is seen in the APPLY log:

WARN-4502: Timeout waiting for incoming data (timeout 60s) - get command.

Then increase this to 300 seconds.

For this value to be updated, it requires NETWORK_QUALITY = WAN

Parameter change needs a process restart: FETCHER/MINE/APPLY

_TCP_RECEIVE_TIMEOUT

How long to wait for receive until timeout.

Default is 60 seconds.

If the following message is seen in the APPLY log:

WARN-4502: Timeout waiting for incoming data (timeout 60s) - get command.

Then increase this to 300 seconds.

Requires MINE and APPLY process restart: Yes

For this value to be updated, it requires NETWORK_QUALITY = WAN

Parameter change needs a process restart: No.

_TCP_SEND_TIMEOUT

How long to receive confirmation of send until timeout.

Default is 60 seconds.

If the following message is seen in the APPLY log:

WARN-4502: Timeout waiting for incoming data (timeout 60s) - get command.

Then increase this to 300 seconds.

Requires MINE and APPLY process restart: Yes

For this value to be updated, it requires NETWORK_QUALITY = WAN

Parameter change needs a process restart: No.

_THREADED_OCI
  • AUTO (Default)
  • YES
  • NO

Determines if multiple Apply processes should be run to apply the changes. Auto means YES for ORACLE and NO for non-Oracle targets. Yes, means that there are multiple Apply process and that changes are being applied in parallel. Setting to NO, means there is only one Apply process and the changes will be applied serially.

For more explanation, please see Apply processes overview

Parameter change needs a process restart: APPLY.

_MINE_LCRLIST_SPILL_ENABLED

Let mine save memory by saving undo information for open transactions to disk.

  • YES (Default)
  • NO

Parameter change needs a process restart: MINE.

_MINE_LCRLIST_SPILL_SIZE_TO_START

Mine saving memory by saving undo information to disk: minimal number of changes in a transactions before it's written to disk.

  • 1000000

Parameter change needs a process restart: MINE.


_MINE_LCRLIST_SPILL_BLOCK_SIZE

Mine saving memory by saving undo information to disk: how much data is written at once.

  •  int default 500000

Parameter change needs a process restart: MINE.

_MINE_LCRLIST_SPILL_KEEP_IN_MEMORY

Mine saving memory by saving undo information to disk: how much data is kept in memory, to handle small rollbacks without going to disk again.

  •  int default 50000

Parameter change needs a process restart: MINE.

_APPLY_STATEMENT_ROLLBACK_WHEN_TOO_MANY

Rollback conflicting change when more than 1 row is affected.

  • YES (Default)
  • NO

Parameter change needs a process restart: No.




Have more questions? Submit a request

Comments