Skip to content

Processing - Advanced

This page defines and allows the configuration of advanced run time options. Most of which do not require the running a Configure or Redefine command to make them take effect.

Configuration file parameters are included below with the following_font.

General


Automated virtual data sets

Parameter: automate_virtuals

Note

This option must be enabled before you clone the database.

This option enables code that automatically handles virtual data sets that are linked with their parent data sets using the virtual_ds_num, real_ds_num, and real_ds_rectype columns in the DATASETS Client control table. When using the Customize command, select the properties icon for the selected dataset to set these links in the Virtual Dataset group. Alternatively, this can be done using user scripts.

These links allow Clone commands to not require that virtual data sets be explicitly specified on the command line. For example, if the virtual data set LN-HISTORY-REMAP is linked to the data set LOAN. Re-cloning LOAN will also clone LN-HISTORY-REMAP, even if it is not specified on the command line.


Override changed columns only option

Parameter: enable_minimized_col

When the Update changed columns only option is enabled and the Customize or Define/Redefine command is run, the corresponding bit is set in the ds_options column of the DATASETS Client control table for all the data sets whose active column is 1. This option, when disabled, allows you to make the Client ignore this bit, which effectively disables the Update changed columns only option. Enabling this option will cancel the override. This option was implemented so running a Redefine command would not be required when the Update changed columns only option causes problems


Override optimized SQL updates option

Parameter: enable_optimized_sql

When the Optimize SQL updates option is enabled and the Customize or the Define/Redefine command is run, the corresponding bit is set in the ds_options column of the DATASETS Client control table for all the data sets whose active column is 1. This option, when disabled, allows you to make the Client ignore this bit. Enabling this option will cancel the override. This option was implemented so running a Redefine command would not be required when the Optimize SQL updates option causes problems.


Preserve deleted records during a reclone

Parameter: preserve_deletes

This option, when enabled allows the Client to preserve deleted records when a data set that preserves deleted records is re-cloned. Instead of dropping and recreating the table, the Client runs a cleanup script that removes all records, except for deleted records.

Caution

If the layout of the tables has changed this option will not be available. Allow the Client to reorganize the table before re-cloning it.


Multithreaded updates

Number of DMSII buffers (2 minimum to 64 maximum)

Parameter: n_dmsii_buffers

This option specifies the number of buffers to be used by the Client in communications with the server. Raising this value may improve performance by ensuring there are enough buffers queued to keep the update workers busy at all times. Letting this option default causes the Client to determine the value needed. When running the Client in single-thread update mode use at least 2 DMSII buffers. In multi-threaded update mode, you should use at least 2 buffers per update thread. The recommended values are 8-threads and 64-buffers.


Number of update threads (2 minimum to 16 maximum)

Parameter: n_update_threads

This option specifies the number of update threads, which are responsible for executing SQL to update the user tables and writing bulk loader temporary files. When using the BCP API in the SQL Server Client, these threads are also responsible for making the BCP API calls to load the data. If you have a powerful machine, setting this parameter to a high value will increase the update processing speed at the expense of additional memory. Avoid setting this parameter to 1, as this effectively passes off all updates to the single worker thread, when executing updates directly is recommended.


SQL execution timeout values (in seconds)

Query alert threshold

Parameter: sql_exec_timeout - first value

This option allows you to override the default setting of 3 minutes (180 seconds), for the time after which the Client issues a WARNING about the query taking too long to complete.


Query abort threshold

Parameter: sql_exec_timeout - second value

Enabling this option will make an input field visible. This input field is used to specify a secondary timeout value for a SQL query after which time the query is aborted. This value must be greater than the value specified for the Query alert threshold described above.


Generate SQL heartbeats (in minutes; 15 minimum to 300 maximum)

Parameter: sql_heart_beat

This option was implemented as a work-around for the situation where long clones result in the Client's connection to the database getting closed, as a result of long periods of inactivity. When this option is enabled, the client periodically executes a dummy SQL update on the Client's connections to the database to keep the connections alive during the data extraction where the only activity is on the bulk loader connection.

Enabling this option will make an input field visible. This input field is used to specify the time interval between SQL heartbeats.


Server inactivity timeout (in minutes)

Parameter: max_srv_idle_time

Enabling this option will make an input field visible. This input-field is used to specify a timeout value for aborting the server connection after several inactivity WARNINGS. You should use a value large enough to see one of the WARNINGS. The Client issues a server inactivity warnings after 5 minutes of inactivity, the second warning is after 15 minutes of inactivity, and the third one is after 30 minutes of inactivity (the WARNING is repeated every 30 minutes from this point)

Note

There are two type of server inactivity WARNINGs: "No data received from server for *nn* minutes" and "No data received from server for *nn* minutes". This option is associated with the first warning, which indicates that the server is not responding to the RPC issued by the Client. The second warning indicates that the Client has not received any updates from the server, which could be an indication that the database is idle.