dsi_commit_check_locks_intrvl
|
The number of milliseconds (ms) the DSI
executor thread waits between executions of the rs_dsi_check_thread_lock function
string.
Default: 1000 ms (1 second)
Minimum: 0
Maximum: 86,400,000 ms (24 hours)
|
dsi_commit_check_locks_log
|
The number of times the DSI executor
thread executes the rs_dsi_check_thread_lock function
string before logging a warning message.
Default: 200
Minimum: 1
Maximum: 1,000,000
|
dsi_commit_check_locks_max
|
The maximum number of times the DSI executor
thread executes the rs_dsi_check_thread_lock function
string before rolling back and retrying a transaction.
Default: 400
Minimum: 1
Maximum: 1,000,000
|
dsi_commit_control
|
Specifies whether commit control processing
is handled internally by Replication Server using internal tables
(on) or externally using the rs_threads system
table (off).
Default: on
|
dsi_ignore_underscore_names
|
When the dsi_partitioning_rule is
set to “name,” specifies whether or not Replication
Server ignores transaction names that begin with an underscore. Values
are “on” and “off.”
Default: on
|
dsi_isolation_level
|
Specifies the isolation level for transactions. The ANSI standard and Adaptive
Server supported values are: -
0 – ensures that data written by one transaction represents the actual
data
-
1 – prevents dirty reads and ensures that data written by one transaction
represents the actual data
-
2 – prevents nonrepeatable reads and dirty reads, and ensures that data
written by one transaction represents the actual data
-
3 – prevents phantom rows, nonrepeatable reads, and dirty reads, and ensures
that data written by one transaction represents the actual data
-
default – use the transaction isolation level of the replicate
data server
Data servers supporting other isolation levels are supported as well through the
use of the rs_set_isolation_level function string. Support is not
limited to the ANSI standard only. Replication Server can support any isolation
level the replicate data server may use.
|
dsi_large_xact_size
|
The number of commands allowed in a transaction before the transaction is
considered to be large.
Default: 100
Minimum: 4
Maximum: 2,147,483,647
Replication Server ignores dsi_large_xact_size when you turn on
dsi_compile_enable.
|
dsi_max_xacts_in_group
|
Specifies the maximum number of transactions
in a group. Larger numbersmay improve data latency at the replicate
database.
Range of values: 1 – 1000.Default: 20
|
dsi_max_cmds_in_batch
|
Defines maximum number of source commands
for which output commands can be batched.
Range: 1 – 1000
Default: 100
|
dsi_num_large_xact_threads
|
The number of parallel DSI threads to
be reserved for use with large transactions. The maximum value is
one less than the value of dsi_num_threads.
Default: 0
|
dsi_num_threads
|
The number of parallel DSI threads to
be used for a connection. A value of 1 disables the parallel DSI
feature.
Default: 1
Minimum: 1
Maximum: 255
|
dsi_partitioning_rule
|
Specifies the partitioning rules (one
or more) the DSI uses to partition transactions among available
parallel DSI threads. Values are origin, origin_sessid, time, user, name,
none, and ignore_origin.
Default: none
|
dsi_serialization_method
|
Specifies the method used to determine
when a transaction can start, while still maintaining consistency.
In all cases, commit order is preserved.
These option methods are ordered from most to least amount
of parallelism. Greater parallelism can lead to more contention
between parallel transactions as they are applied to the replicate
database. To reduce contention, use the dsi_partition_rule option.
no_wait – specifies
that a transaction can start as soon as it is ready, without regard
to the state of other transactions.
Note: You can only set dsi_serialization_method to no_wait if dsi_commit_control is
set to “on”.
wait_for_start – specifies
that a transaction can start as soon as the transaction scheduled
to commit immediately before it has started.
wait_for_commit (default) – specifies
that a transaction cannot start until the transaction scheduled
to commit immediately preceding it is ready to commit.
wait_after_commit – specifies
that a transaction cannot start until the transaction scheduled
to commit immediately preceding it has committed completely.
These options are retained only for backward compatibility
with earlier versions of Replication Server: none – same
as wait_for_start.
single_transaction_per_origin – same
as wait_for_start with dsi_partitioning_rule set
to origin.
isolation_level_3 – same
as wait_for_start with dsi_isolation_level set
to 3.
|
dsi_sqt_max_cache_size
|
The maximum SQT cache size for the outbound
queue in bytes. The default, 0, means the current setting of the sqt_max_cache_size parameter
is used as the maximum cache size for the connection.
Default: 0
For 32-bit Replication Server:
For 64-bit Replication Server: Minimum – 0
Maximum – 2,251,799,813,685,247 (in bytes)
|
parallel_dsi
|
Provides a shorthand method for configuring parallel DSI threads.
Setting parallel_dsi to
on automatically sets:
-
dsi_num_threads to 5
-
dsi_num_large_xact_threads to 2
-
dsi_serialization_method
to wait_for_commit
-
dsi_sqt_max_cache_size
to 1 million bytes on 32-bit platforms and 20 million bytes on 64-bit
platforms.
Setting parallel_dsi to off resets these
parallel DSI parameters to their default values.
You can set parallel_dsi to on and then set
individual parallel DSI configuration parameters to fine-tune your
configuration.
Default: off
|