Internal Variables
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 Variable | Description |
---|---|
_APPLY_COUNT_LOOKAHEAD_READ | Default 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_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. |
_APPLY_DRIVER |
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. |
_APPLY_OCI_PASSTHROUGH_TYPES |
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_COUNT | How many times should APPLY try to run the conflicting SQL before the process is paused. Default value 20. |
_APPLY_PLOG_CHECK_FATAL | Disable checksum checking when transferring PLOG file from source to target servers. |
_ADD_SUPLOG | Adjusts the behaviour of adding supplemental log to the database during the setup.
|
_APPLY_THREAD_MEM_ACCOUNTING |
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 |
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. |
_DDL_REPLICATE_PARTITIONS | Controls whether Replicate will allow the Oracle 12c commands to propagate. The target of course must also be 12c.
|
_DELETE_OBSOLETE_PLOGS | Set this to NO to turn off the housekeeping of the PLOG files.
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.
|
_DELETE_OBSOLETE_DEBUG |
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
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.
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 and APPLY processes. |
_EXIT_CONDITION | Specify if both online redo logs and archive logs should be use or archive log only (archivelogs only) files exclusively.
Set this in the *MINE.ddc only. Changing this requires a restart of the MINE process. |
_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. |
_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). |
_LOG_ERRORS_TO_DATABASE | Log errors to the Dbvisit Replicate data dictionary. Values are:
|
_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:
In order to avoid conflicts on replicate internal tables, it is necessary to enable supplemental logging also on following 3 tables: |
_MINE_AUTO_PREPARE_BY_NAME_STORE |
|
_MINE_AUTO_PREPARE_BY_NAME_USE | Setting the parameter to YES,
|
_MINE_DETECT_DUPLICATES_IN_ASSEMBLY |
|
_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] |
_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. |
_MINE_KEY_IMAGE_ON_PK_UPDATE |
|
_MINE_KEY_IMAGE_PREFER_SUPLOG |
|
_MINE_KEY_IMAGE_WITH_ALL_LOGGING |
|
_MINE_RAC_SKIP_THREADS | If 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.
|
_MINE_REPORT_INVALID_DATA | Same as _MINE_FIX_INVALID_DATA, but governs printing to log, not the actual value change. Values are:
|
_MINE_UPDATE_RBA_ON_VOID |
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.
|
_NETWORK_TRAFFIC_DEBUG |
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_ENABLE | Set to NO to disable notifications. This disables all smtp (mail) and snmp notifications. |
_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).
|
_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 |
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 |
_MINE_LCRLIST_SPILL_ENABLED |
Enabling |
_MINE_LCRLIST_SPILL_SIZE_TO_START |
threshold of spilling if below this size, do not start spilling at all |
_MINE_LCRLIST_SPILL_BLOCK_SIZE |
how much is written in one spill |
_MINE_LCRLIST_SPILL_KEEP_IN_MEMORY |
how much is left in memory after spill (=so an immediate rollback does not mean we have to reread) |
_APPLY_STATEMENT_ROLLBACK_WHEN_TOO_MANY |
|
_RESOLVE_APPLY_LOCKS | Aborts apply when dead lock is detected, created file with list locked transaction. After restart APPLY the file with transaction list, those transaction will be executed in pessimistic mode
Option Yes leeds stopping APPLY when lock happens, saving names of locked transaction, in the next start APPLY looks thought those transaction (maximum deep length defined by setting _APPLY_COUNT_LOOKAHEAD_READ) excludes rollbacked operation from execution. For avoid stopping service, it needs to set replicate service to restart after unexpected stopping. Control Panel → System and Security → Administrative Tools → Services → Db replicate service properties in Recovery tab set Restart the Service for all options (First failure, Second failure, Subsequent failures) |