Replication Server parameters that affect performance

rs_init sets default configuration parameters after you install your Replication Server. You can change the values of the configuration parameters shown in Table 4-2 to improve Replication Server performance.

See “Changing Replication Server parameters” on page 94 in the Replication Server Administration Guide Volume 1 for information on how to modify these parameters using configure replication server.

Table 4-2: Replication Server parameters that affect performance

Configuration parameter

Description

deferred_queue_size

The maximum size of an Open Server deferred queue. If Open Server limits are exceeded, increase the maximum size. The value must be greater than 0.

NoteIf modified, you must restart the Replication Server for the change to take effect.

Default: 2048 on Linux and HPIA32       

1024 on other platforms

dynamic_sql

Turns dynamic SQL feature on or off. Other dynamic SQL related configuration parameters will only take effect if this parameter is set to on.

Default: off

dynamic_sql_cache_size

Gives the Replication Server a hint on how many database objects may use the dynamic SQL statement for a connection.

Default: 100

Minimum: 1

Maximum: 65536

dynamic_sql_cache_management

Manages the dynamic SQL cache for a DSI executor thread. Values: mru - keeps the most recently used statements and deallocates the rest to allocate new dynamic statements when dynamic_sql_cache_size is reached. fixed (default) - Replication Server stops allocating the new dynamic statements once dynamic_sql_cache_size is reached.

exec_cmds_per_timeslice

Specifies the number of LTL commands an LTI or RepAgent executor thread can process before yielding the CPU. By increasing this value, you allow the RepAgent executor thread to control CPU resources for longer periods of time, which may improve throughput from RepAgent to Replication Server.

Set this parameter at the connection level using alter connection.

See “Controlling the number of commands the RepAgent executor can process”.

Default: 5

Minimum: 1

Maximum: 2,147,483,647

exec_sqm_write_request_limit

Specifies the amount of memory available to the LTI or RepAgent Executor thread for messages waiting to be written to the inbound queue.

Default: 1MB

Minimum: 16K

Maximum: 2GB

init_sqm_write_delay

The initial amount of time an SQM Writer should wait for more messages before writing a partially full block of messages to the queue. The SQM Writer always tries to write full blocks to the queue. If it has partially filled a block, and cannot fill it, SQM Writer waits the amount of time specified by init_sqm_write_delay before rechecking whether messages are waiting to be added to the block. If no messages exist, SQM Writer doubles the init_sqm_write_delay time. The SQM Writer continues to double the delay time until it reaches the value of init_sqm_write_max_delay. At this point, SQM Writer writes the partially full block.

See “Setting the amount of time SQM Writer waits”.

Default: 1000 milliseconds

init_sqm_write_max_delay

The maximum amount of time an SQM Writer thread should wait for more messages before writing a partially full block of messages to the queue. See the description of init_sqm_write_delay for more information. See also “Setting the amount of time SQM Writer waits”.

Default: 10,000 milliseconds

md_sqm_write_request_limit

Specifies the amount of memory available to the Distributor for messages waiting to be written to the outbound queue.

NoteIn Replication Server 12.1, md_sqm_write_request_limit replaces md_source_memory_pool. md_source_memory_pool is retained for compatibility with older Replication Servers.

Default: 1MB

Minimum: 16K

Maximum: 2GB

memory_limit

The maximum total memory the Replication Server can use.

Values for several other configuration parameters are directly related to the amount of memory available from the memory pool indicated by memory_limit. These include exec_sqm_write_request_limit, md_sqm_write_request_limit, queue_dump_buffer_size, sqt_max_cache_size, sre_reserve, and sts_cachesize.

Default: 80 MB

rec_daemon_sleep_time

Specifies the sleep time for the recovery daemon, which handles “strict” save interval messages in warm standby applications and certain other operations. See “Setting wake up intervals”.

Default: 2 minutes

smp_enable

Enables symetric multiprocessing (SMP). Specifies whether Replication Server threads should be scheduled internally by Replication Server or externally by the operation system. When Replication Server threads are scheduled internally, Replication Server is restricted to one machine processor, regardless of how many may be available. Values are “on” and “off.”

See “Making SMP more effective”.

Default: off

sqm_cache_enable

Indicates whether to enable SQM caching and large I/O in a stable device.

Default: on

sqm_cache_size

Indicates the number of pages in cache where size of a page is specified by sqm_page_size.

Default: 16

sqm_page_size

Indicates the number of 16K blocks in a page.

Default: 4

sqm_recover_segs

Specifies the number of stable queue segments Replication Server allocates before updating the RSSD with recovery QID information.

See “Specifying the number of stable queue segments allocated”.

Default: 1

Minimum: 1

Maximum: 2,147,483,648

sqm_seg_prealloc

Enables or disables the segments preallocation settings.

Default: on

sqm_write_flush

Specifies whether or not writes to memory buffers are flushed to the disk before the write operation completes. Values are “on” ,“off” and “dio”.

See also “Stable devices: considerations.”

Default: on

sqt_init_read_delay

The length of time an SQT thread sleeps while waiting for an SQM read before checking to see if it has been given new instructions in its command queue. With each expiration, if the command queue is empty, SQT doubles its sleep time up to the value set for sqt_max_read_delay.

Default: 1 milliseconds (ms)

Minimum: 0 ms

Maximum: 86,400,000 ms (24 hours)

sqt_max_cache_size

Maximum SQT cache memory, in bytes. See “Sizing the SQT cache”.

Default: 1,048,576 bytes

sqt_max_read_delay

The maximium length of time an SQT thread sleeps while waiting for an SQM read before checking to see if it has been given new instructions in its command queue.

Default: 1 ms

Minimum: 0 ms

Maximum: 86,400,000 ms (24 hours)

sts_cachesize

The total number of rows that are cached for each cached RSSD system table. Increasing this number to the number of active replication definitions prevents Replication Server from executing expensive table lookups.

Monitor whether the STS cache is too small by reviewing counter 11008 – STSCacheExceed or examing the Replication Server log for warnings that rows have been removed from the STS cache. See “Caching system tables”.

Default: 100

sts_full_cache_table_name

Specifies an RSSD system table that is to be fully cached. Fully cached tables do not require access to the RSSD for simple select statements.

See “Caching system tables” for a list of RSSD tables that can be fully cached.

sub_daemon_sleep_time

Number of seconds the subscription daemon sleeps before waking up to recover subscriptions. The range is 1 to 31,536,000.

See“Setting wake up intervals”.

Default: 120 seconds

sub_sqm_write_request_limit

Specifies the memory available to the subscription materialization or dematerialization thread for messages waiting to be written to the outbound queue.

Default: 1MB

Minimum: 16K

Maximum: 2GB