Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 52 Next »

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_READDefault value 10000. 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.
_APPLY_COUNT_LOOKAHEAD_READ_FASTFAILDefault 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.
_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.

_APPLY_MAX_RETRY_COUNTDefault value 20. This parameter sets the value of how often APPLY should try to apply the same sequel if a conflict occurs before it PAUSES.
_APPLY_PLOG_CHECK_FATALDisable checksum checking when transferring PLOG file from source to target servers.
_APPLY_POSTPONE_LAST_LCR
  • NO (default)
  • YES

If set to YES, then APPLY will postponing the last LCR or SQL until the next SQL for the same object is found. This can sometimes help with locking issues or "APPLY hung" issues. This can also assist if there are killed sessions on the source database and the APPLY is waiting on the detection of the killed process to rollback (or commit).

By setting to YES it means that APPLY is always one SQL behind. This means APPLY always keeps one SQL in each open transaction unapplied. It processes the changes it gets from MINE, but stops short of the last one available so far.

As soon as APPLY receives the commit, it applies even the last SQL. So there is never any data loss, although it can be noticed that APPLY lags behind MINE until the commit arrives. But this is probably most visible for manual test cases (like insert 10.000 rows and see that 9.999 has been applied) because in production systems there is always some activity from the source (and with commits), so this situation is rarely seen.

Setting _APPLY_POSTPONE_LAST_LCR = Yes can help if the following message is seen in Apply log:

ERR-3112: Apply waiting on lock on DBVREP user. This is either an internal deadlock, multiple running appliers using the same data, or someone manually changing data using this account.


_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.
_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.

_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.

_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
_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

_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
_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.

_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

Changing this requires a restart of the MINE process

_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.

Changing this requires a restart of the MINE process.

Deprecated in 2.6.0.4. See MINE parameter  REDO_READ_METHOD.

_LOG_ERRORS_TO_DATABASE

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

  • YES (default)
  • NO
_MINE_FIX_INVALID_DATACheck date values for various types of invalid data and replace with new value. This is a bit field. 1: zeroes at invalid places: year 0, month 0, day 0, hour -1, minute -1 or second -1.
[no further checks implemented now]
_MINE_FIX_INVALID_DATE_NEW_VALUEString 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.
_MINE_REPORT_INVALID_DATASame as _MINE_FIX_INVALID_DATA, but governs printing to log, not the actual value change.
_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

 _MINE_WRONG_ORDER_FATAL

Debug RAC thread merging.

  • NO
  • ARCHONLY
  • ALL
 _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.
_NOTIFY_ENABLESet to NO to disable notifications. This disables all smtp (mail) and snmp notifications.

_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
_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.

Requires MINE and APPLY process restart: Yes

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

_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

_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

_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

 

 

 

  • No labels