async_parser |
Enables
SAP Replication Server to asynchronously parse commands from the RepAgent.Setting async_parser
on sets: - exec_prs_num_threads to 2
- ascii_pack_ibq
on
- cmd_direct_replicate on
- dist_cmd_direct_replicate on
Default: off
Note:
Before configuring the asynchronous parser, ensure
that smp_enable is on, and that the
SAP Replication Server host machine can support additional threads for
the parsing. You must set the SAP Replication Server site version to
1571 or later before you can set ascii_pack_ibq on. If the site version is earlier than
1571, setting async_parser on only
sets exec_prs_num_threads, cmd_direct_replicate, and dist_cmd_direct_replicate.
|
ascii_pack_ibq |
Reduces the stable queue space consumed by packed
commands in the inbound queue by using ASCII packing.
Default: off
Note: You must enable the asynchronous parser for SAP
Replication Server to benefit from ASCII packing in the inbound queue. You
must set the SAP Replication Server site version to 1571 or later before you
set ascii_pack_ibq on.
|
batch
|
Specifies how SAP Replication Server sends commands to
data servers. When batch is “on,” SAP
Replication Server may send multiple commands to the data server as a single
command batch. When batch is “off,” SAP
Replication Server sends commands to the data server one at a time.
Default: on
|
batch_begin
|
Indicates whether a begin
transaction can be sent in the same batch as other commands
(such as insert, delete, and so on).
Default: on
|
cmd_direct_replicate
|
Set cmd_direct_replicate on for the Executor thread to send parsed
data directly to the Distributor thread along with binary or
ascii
data. When required, the Distributor thread can retrieve and process data
directly from parsed data, and improve replication performance by saving
time otherwise spent parsing data again.
Default:
off
|
dist_cmd_direct_replicate |
Set dist_cmd_direct_replicate on to allow the DIST module to send
internal parsed data through an in-memory cache to the DSI.
Default: on
If you set dist_cmd_direct_replicate off, DIST module sends the data to
DSI through the outbound queue.
|
command_retry
|
The number of times to retry a failed transaction. The
value must be greater than or equal to 0.
Default: 3
|
db_packet_size
|
The maximum size of a network packet. During database
communication, the network packet value must be within the range accepted by
the database.
Allowable range: 512 bytes
to 2,147,483,647 bytes within the limits for the replicate data server
Maximum ASE limit: 16384 bytes
Default: 512-byte network packet for all Adaptive Server
databases.
|
deferred_name_resolution
|
Enable deferred name resolution in SAP Replication Server
to support deferred name resolution in SAP ASE. Deferred name resolution is
only supported in SAP ASE 15.5 and later.
You must ensure that deferred name resolution is supported
in the replicate SAP ASE before you enable deferred name resolution support
in SAP Replication Server.
After you execute deferred_name_resolution with alter
connection or alter logical
connection, suspend and resume the connection.
Default: off
|
disk_affinity
|
Specifies an allocation hint for assigning the next
partition. Enter the logical name of the partition to which the next segment
should be allocated when the current partition is full.
Default: off
|
dist_sqt_max_cache_size
|
The maximum Stable Queue Transaction (SQT) cache size for
the inbound queue. 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 SAP Replication Server:
-
Minimum – 0
-
Maximum – 2147483647
For 64-bit SAP Replication Server:
|
dist_stop_unsupported_cmd
|
When dist_stop_unsupported_cmd is on, DIST suspends itself if a
command is not supported by downstream SAP Replication Server. If it is off,
DIST ignores the unsupported command.
Regardless of dist_stop_unsupported_cmd parameter’s setting, SAP Replication
Server always logs an error message when it sees the first instance of a
command that cannot be sent over to a lower-version SAP Replication Server.
Default: off
|
dsi_alt_writetext
|
Controls how large-object updates are sent to the
replicate database. The values are: -
dcany –
generates a writetext command that
includes primary key columns. This setting prevents full table scans
when populating non-ASE replicate databases using Enterprise Connect™ Data Access
(ECDA) as an interface.
-
off – generates
an Adaptive Server writetext
command that includes a text pointer.
Default: off
Note:
If you are using ExpressConnect to connect non-ASE
replicate databases, then you are not required to configure the dsi_alt_writetext database parameter.
|
dsi_bulk_copy
|
Turns the bulk-copy-in feature on or off for a connection.
If dynamic_sql and dsi_bulk_copy are both on, SAP Replication
Server applies bulk-copy-in when appropriate and uses dynamic SQL if SAP
Replication Server cannot use bulk-copy-in. Turn dsi_bulk_copy on to improve performance if you have large
batches of inserts.
Default: off
Note: You must set dsi_bulk_copy to off
before you enable real-time loading (RTL) replication to SAP IQ.
|
dsi_bulk_threshold
|
The number of consecutive insert commands in a transaction that, when reached, triggers
SAP Replication Server to use bulk copy-in. When Stable Queue Transaction
(SQT) encounters a large batch of insert
commands, it retains in memory the number of insert commands specified to decide whether to apply bulk
copy-in. Because these commands are held in memory, SAP suggests that you do
not configure this value much higher than the configuration value for
dsi_large_xact_size.
SAP Replication Server uses dsi_bulk_threshold for real-time loading (RTL) replication to
SAP IQ and high volume adaptive replication (HVAR) to Adaptive Server. If
the number of commands for an insert,
delete, or update operation on one table is less than the number you
specify after compilation, RTL and HVAR use language instead of bulk
interface.
Minimum: 1
Note:
Do not set to ‘1’ when you enable RTL or HVAR as this
detrimental to performance.
Default: 20
Configuration level: Server, database
For setting, use configure
replication server for server-level or alter connection for database-level.
Note:
You must set dsi_compile_enable to ‘on’ to use dsi_bulk_threshold for RTL or HVAR.
|
dsi_cdb_max_size
|
Maximum net-change database size that SAP Replication
Server can generate for HVAR or RTL. in megabytes. -
Default – 1024
-
Minimum – 0
- Maximum – 2,147,483,647
In HVAR, SAP Replication Server uses dsi_cdb_max_size as a threshold to: - Detect large transactions that are replicated using
the continuous replication mode.
- Stop grouping small compilable transactions into a
group requiring a net-change database that is larger than dsi_cdb_max_size.
In RTL, SAP Replication Server uses dsi_cdb_max_size to flush large transaction
groups incrementally using full incremental compilation.
|
dsi_charset_convert
|
The specification for
handling character-set conversion on data and identifiers between the
primary SAP Replication Server and the replicate SAP Replication Server.
This parameter applies to all data and identifiers to be applied at the DSI
in question. The values are:
-
on – convert from the primary SAP Replication Server
character set to the replicate SAP Replication Server character set;
if character sets are incompatible, shut down the DSI with an
error.
-
allow – convert where character sets are compatible;
apply any unconverted updates to the database, as well.
-
off – do not attempt conversion. This option is
useful if you have different but compatible character sets and do not
want any conversion to take place. During subscription
materialization, a setting of “off” behaves as if it were “allow.”
Default: on
|
dsi_check_unique_key
|
Checks
for unique key in the primary database tables during direct load
materialization. If this parameter is set to on, the primary tables with no
unique key must not have any activity, otherwise the subscription may fail
during the catch-up phase and the subscription is aborted, and marked with
error.
When the subscription is aborted, it must be dropped and recreated. Before
recreating the subscription, cleaning up the replicate table (like truncate
table) is required.
Default: on
|
dsi_cmd_batch_size
|
The maximum number of bytes that SAP Replication Server
places into a command batch.
Default: 8192 bytes
|
dsi_cmd_prefetch
|
Allows DSI to pre-build the next batch of commands while
waiting for the response from data server, and therefore improves DSI
efficiency. If you also tune your data server to enhance performance, it is
likely that you will gain an additional performance increase when you use
this feature.
Default: off
When you set dsi_compile_enable to ‘on’, SAP Replication Server ignores what
you set for dsi_cmd_prefetch.
License: Separately licensed under the Advanced Services
Option. See Replication Server – Advanced Services
Option in the Administration Volume 2
|
dsi_cmd_separator
|
The character that separates commands in a command
batch.
Default: newline (\n)
Note:
You must update this parameter in an interactive mode,
not by executing a DDL-generated script, or any other script. You cannot
reset dsi_cmd_separator by running a
script.
|
dsi_command_convert
|
Specifies how to convert a replicate command. A
combination of these operations specifies the type of conversion:
-
d – delete
-
i – insert
-
u – update
-
t – truncate
-
none – no
operation
Combinations of operations for dsi_command_convert include i2none, u2none, d2none, i2di, t2none, and u2di.
You must type the number 2. The operation before
conversion precedes the 2 and the operations after conversion are after the
2. For example:
-
d2none – do not
replicate the delete command.
-
i2di,u2di – convert both insert and update to delete
followed by insert, which is
equivalent to an autocorrection.
-
t2none – do not
replicate truncate table
command.
Default: none
You can also configure this parameter at the table
level.
For setting, use alter
connection for database-level, or alter connection with the for
replicate table named clause for table-level configuration.
Set dsi_command_convert to none
to remove the current dsi_command_convert setting for a connection or a table.
|
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. Used with parallel
DSI.
Default: 1000ms (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. Used with parallel DSI.
Default: 200
Minimum: 1
Maximum: 1,000,000
|
dsi_commit_check_locks_max
|
The maximum number of times a DSI executor thread checks
whether it is blocking other transactions in the replicate database before
rolling back its transaction and retrying it. Used with parallel DSI.
Default: 400
Minimum: 1
Maximum: 1,000,000
|
dsi_commit_control
|
Specifies whether commit control processing is handled
internally by SAP Replication Server using internal tables (on) or
externally using the rs_threads system
table (off).
Default: on
|
dsi_compile
_enable
|
Set to ‘on’ to enable RTL or HVAR at the server-level,
database-level, or table-level.
Default:
For setting, use configure
replication server for server-level, alter connection for database-level, or alter connection with the for replicate table named clause for
table-level configuration.
Set dsi_compile_enable
to ‘off’ for an affected table if replicating new row changes causes
problems, such as when there is a trigger on the table which requires all
the operations on that table to be replicated in log order, and therefore
compilation is not allowed.
Note:
Set dsi_compile
_enable to ‘on’ at the server or database-level before you set
dsi_compile_enable to ‘off’ at the
table-level.
When you set dsi_compile_enable to ‘on’, Replication Server ignores what you
set for replicate_minimal_columns and
dsi_cmd_prefetch.
After you execute dsi_compile_enable at the server, database, or table-level,
suspend and resume the connection.
License: Separately licensed under the Advanced Services
Option. See the Advanced Services Option in
the Administration Guide Volume 2.
|
dsi_compile_max_cmds
|
Specifies, in number of commands, the maximum size of a
group of transactions. When HVAR or RTL reaches the maximum group size for
the current group that it is compiling, HVAR or RTL starts a new group.
However, if there is no more data to read and even if the
group does not reach the maximum number of commands, HVAR or RTL immediately
applies the group in its current state to the replicate database. HVAR or
RTL do not wait for more data to arrive in order to build the group size up
to the limit you set.
In
RTL, SAP Replication Server uses dsi_compile_max_commands with dsi_cdb_max_size to trigger the flushing of groups
incrementally in full incremental compilation.
In
HVAR, Replication Server uses dsi_compile_max_commands with dsi_cdb_max_size to detect large transactions that are then
replicated using the continuous replication mode.
Default:
10,000
Minimum: 100
You can configure the parameter at the server or database
levels
For setting, use configure
replication server for server-level or alter connection for database-level.
Note:
You must set dsi_compile_enable to ‘on’ to use dsi_compile_max_cmds.
|
dsi_compile_retry_threshold
|
Specifies a threshold value for the number of commands in
a group of transactions being compiled for HVAR or RTL during the retry
phase.
If the number of commands in a group containing failed
transactions is: - Smaller than the value of dsi_compile_retry_threshold, Replication Server retries
processing the group in continuous replication mode.
- Greater than the value of dsi_compile_retry_threshold, Replication Server retries
processing the group using HVAR which may then require more retries to
identify the failed transactions.
Default: 100
Minimum: 0
Maximum: 2,147,483,647
|
dsi_connector_sec_mech
|
Specifies the DSI connector security mechanism.
Default: default.
Valid values: Depends on the connector. ExpressConnect for HANA DB uses this parameter to
adjust the security mechanism used to connect to the replicate data server.
Replication Server passes this parameter to the connector without
validation. For a list of valid values, see the documentation for
ExpressConnect for HANA DB.
|
dsi_connector_type
|
Specifies the database driver technology used for
implementing the connector. This parameter along with dsi_dataserver_make is used to identify the
connector that is associated with the connection. If you are replicating to
ASE or IQ, set this parameter value to ctlib or if replicating to Oracle, set the value to oci.
Default: default.
Valid values: cli, ctlib, jdbc, msnative, oci, odbc.
|
dsi_dataserver_make
|
Specifies the data server type that contains the
replicate database that you want to connect to.
Set to: - ase – to
replicate to SAP ASE
- ase – to
replicate to IBM DB2 on z/OS
- hdb – to
replicate to SAP HANA database
- iq – to
replicate to SAP IQ
- ase – to
replicate to Microsoft SQL Server
- ora – to
replicate to Oracle
- udb – to
replicate to IBM UDB
Use dsi_dataserver_make and dsi_connector_type to identify the connector that is associated
with the connection.
You can configure dsi_dataserver_make at the database level.
If you do not specify this parameter, Replication Server
deduces the data server type from the function-string class name of the
database connection.
If the functions-string class is customized, Replication
Server cannot deduce the data server type and defaults to ‘ASE’.
|
dsi_do_decompression
|
Specifies whether or not to decompress LOB data.
Set to: - on – to
decompress LOB data
- off – (default)
to not decompress LOB data
In the rs_ase_to_hanadb, rs_ase_to_iq, rs_ase_to_msss, rs_ase_to_oracle, and rs_ase_to_udb, connection profiles, dsi_do_decompression is set to on so that non-ASE replicate
data servers can handle compressed LOB data sent from ASE.
|
dsi_exec_request_sproc
|
Turns on or off request stored procedures at the DSI of
the primary Replication Server.
Default: on
|
dsi_fadeout_time
|
The number of seconds of idle time before a DSI connection
is closed. A value of “-1” indicates that a connection will not close.
Default: 600 seconds
|
dsi_incremental_parsing
|
Set to on to enable incremental parsing by the DSI
Scheduler thread when you enable high volume adaptive replication (HVAR),
real-time loading (RTL), or DSI bulk copy-in. Note: dsi_incremental_parsing
takes effect only if either dsi_compile_enable or dsi_bulk_copy is also set to on. Otherwise, Replication
Server ignores dsi_incremental_parsing.
Default: on
The primary and replicate Replication Servers must be
version
15.7.1
SP100 or later to support incremental parsing.
Use dsi_incremental_parsing with:
Connection-level settings override server-level settings.
In the Replication Server
Administration Guide Volume 2, see: - Incremental Parsing
- High Volume Adaptive
Replication to Adaptive Server
- DSI Bulk Copy-in
See Real-Time Loading
Solution in the Replication Server
Heterogeneous Guide
|
dsi_ignore_underscore_name
|
When the transaction 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_keep_triggers
|
Specifies whether triggers should fire for replicated
transactions in the database.
Set off to cause Replication Server to set triggers off in
the Adaptive Server database, so that triggers do not fire when transactions
are executed on the connection.
Set on for all databases except standby databases.
Default: on (except standby databases)
|
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_cmds_in_batch
|
Defines the maximum number of source commands whose
output commands can be batched.
You
must suspend and resume the connection for any change in the parameter to
take effect.
Range: 1 – 1000
Default: 100
|
dsi_max_cmds_to_log
|
The number of commands to write into the exceptions log
for a transaction.
Default: -1 (all commands)
Valid values: 0 to 2147483647
|
dsi_max_xacts_in_group
|
Specifies the maximum number of transactions in a group.
Larger numbers may improve data latency at the replicate database. Range of
values: 1 – 1000.
Default: 20
This parameter is ignored when dsi_compile_enable is turned
on.
|
dsi_max_text_to_log
|
The number of bytes to write into the exceptions log for
each rs_writetext function in a failed
transaction. Change this parameter to prevent transactions with large
text, unitext, image or rawobject columns from filling the RSSD or its
log.
Default: -1 (all text,
unitext, image, or rawobject
columns)
|
dsi_non_blocking_commit
|
The number of minutes that Replication Server saves a
message after a commit. A 0 value means that non-blocking commit is
disabled.
Note:
You cannot use this parameter with alter connection to configure an active
database connection in a standby environment.
Default: 0
Maximum: 60
|
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. The maximum
value is 255.
Default: 1
|
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, and none.
See Replication Server
Administration Guide Volume 2 > Performance Tuning > Use Parallel
DSI Threads > Partitioning Rules: Reducing Contention and Increasing
Parallelism for detailed information.
Default: none
This parameter is ignored when dsi_compile_enable is turned
on.
|
dsi_proc_as_rpc
|
Specifies how Replication Server applies stored procedure
replication. - Set on to use remote procedure call (RPC) calls.
- Set off to use language calls.
Default: off
When the replicate database is Adaptive Server , dsi_proc_as_rpc can be on or off.
When the replicate database is Oracle: - Set on if you use ExpressConnect for Oracle (ECO).
ECO only supports stored procedure replication using RPC. By default,
Replication Server sets dsi_proc_as_rpc on if you use one of the Oracle ECO
connection profiles when you create the connection to the Oracle
database from Replication Server. See Configuring ExpressConnect
for Oracle in the SAP®Replication
Server® Options ExpressConnect for Oracle Configuration
Guide.
|
dsi_quoted_identifier
|
Enables
or disables quoted identifier support in the Data Server Interface (DSI).
- on – enables quoted identifiers if you mark
the table as quoted in a replication definition or if the LTL that is sent
by RepAgent from Adaptive Server 15.7 marks the table as quoted
- off – disable
quoted identifier support
- always – always surrounds identifiers with
double quotes, regardless of primary database configuration or replication
definition setting. You can use the always option for a specific table or for all tables.
Default: off
You can set dsi_quoted_identifier at the table level, connection level, or
at the server level. The table-level dsi_quoted_identifier setting takes precedence over any
existing connection-level dsi_quoted_identifier setting and the connection-level setting
takes precedence over the server-level dsi_quoted_identifier setting. See SAP
Replication Server Administration Guide: Volume 1 > Manage Replicated
Tables > Create Replication Definitions > Quoted
Identifiers.
If you set dsi_quoted_identifier to on
for an Adaptive Server database connection , you must not include double
quotes in any stored procedure you want to replicate. Otherwise, the DSI
thread shuts down.Enable this parameter to: -
Create or modify a connection that allows quoted
identifiers to be forwarded to data servers.
Use create
connection or alter
connection to set dsi_quoted_identifier. Use admin config to check the value of dsi_quoted_identifier.
-
Support marking of identifiers in a replication
definition as quoted.
Quoted identifiers are not supported in mixed
version environments. For replication of a quoted identifier to succeed, the
primary Replication Server and the Replication Server that connects to the
replicate data server version must be 15.2 and later. However, intermediate
Replication Servers in a route can be of lower versions.
|
dsi_replication
|
Specifies whether or not transactions applied by the DSI
are marked in the transaction log as being replicated.
When dsi_replication
is set to “off,” the DSI executes set replication
off in the Adaptive Server database, preventing Adaptive Server
from adding replication information to log records for transactions that the
DSI executes. Since these transactions are executed by the maintenance user
and, therefore, not usually replicated further (except if there is a standby
database), setting this parameter to “off” avoids writing unnecessary
information into the transaction log.
dsi_replication must
be set to “on” for the active database in a warm standby application for a
replicate database, and for applications that use the replicated
consolidated replicate application model.
Default: on (“off” for standby database in a warm standby
application)
|
dsi_replication_ddl
|
Supports bidirectional replication by specifying whether
or not transactions are to be replicated back to the original database.
Default: off
When dsi_replication_ddl is set to on, DSI sends set replication off to the replicate database,
which instructs it to mark the succeeding DDL transactions available in the
system log not to be replicated. Therefore, these DDL transactions are not
replicated back to the original database, which enables DDL transaction
replication in bidirectional MSA replication environment.
Additionally, dsi_replication_ddl controls how SAP
Replication Server applies DDL, select into and request
function commands at the replicate database. When you set
dsi_replication_ddl: - off – SAP Replication Server applies the commands by
disconnecting and reconnecting as the user who executes the commands at
the primary. When connecting as the original user, the DSI does not send
set replication off in order to support
asynchronous request functions. As a result, changes are re-replicated
from the replicate database. For MSA systems, re-replication of DDL back
to the source can be prevented by excluding DDL replication in the
database repdef.
- on – SAP Replication Server applies the commands by granting
set session authorization permission to the user
who executes the commands at the primary database. Since the DSI
typically sends set replication off to the replicate
database, the changes are not re-replicated.
Note: Setting
dsi_replication_ddl to off requires
password synchronization as the DSI attempts to connect using the same
password as the caller at the primary. Although setting
dsi_replication_ddl to on does not require
password synchronization, the maintenance user requires set
session authorization permission.
|
dsi_retry
|
Specifies whether or not to suspend replication after
failing to continue replication using the HVAR, RTL, dynamic SQL, DSI bulk
copy-in, parallel DSI, or continuous log-order language replication
modes.
Set dsi_retry to: - 0 – the default setting where Replication Server
retries applying transactions and then automatically switches to the
continuous language replication mode when HVAR, RTL, parallel DSI,
dynamic SQL or DSI bulk copy-in fails to apply transactions
- 1 – to stop replication when:
- HVAR or RTL fail to apply compilable
transactions
- Parallel DSI, dynamic SQL, DSI bulk copy-in, or
the continuous log-order language modes fail to apply
transactions
- 2 – to stop replication when:
- The number of commands in a group containing
failed transactions is smaller than the value of dsi_compile_retry_threshold and HVAR
or RTL fail to apply compilable transactions
- Parallel DSI, dynamic SQL, DSI bulk copy-in,
parallel DSI, or continuous log-order language modes fail to apply
transactions
Use dsi_retry with: - alter
connection and create
connection – to suspend replication at the connection level
for the specified database
- configure replication
server – to suspend replication at the server level for all
connections
- create alternate
connection – to suspend replication for the specified
replication path in a multipath environment
Connection-level settings override server-level settings.
In the
Troubleshooting Guide, see: - Unable to Continue Replication in a Faster Mode for
scenarios that may require you to use dsi_retry
- Configuration Options and Example Error Messages for
dsi_retry for examples of error messages you may see if you use
dsi_retry
For descriptions of the faster replication modes, see: - Parallel DSI Threads, DSI Bulk Copy-in,
Dynamic SQL for Enhanced Replication Server Performance,
High Volume Adaptive Replication to Adaptive Server, and
Enhanced Retry Mechanism in the Administration
Guide Volume 2
- Real-Time Loading Solution and Enhanced Retry
Mechanism in the Heterogeneous Guide
|
dsi_row_count_validation
|
If you have table rows that are not synchronized, and you
want to bypass the default error actions and messages, you can set dsi_row_count_validation to off to disable row count validation.
Default: on to
enable row count validation.
You need not suspend and resume a database connection
when you set dsi_row_count_validation
for the connection; the parameter takes effect immediately. However, the new
setting affects the batch of replicated objects that Replication Server
processes after you execute the command. Changing the setting does not
affect the batch of replicated objects that Replication Server is currently
processing.
|
dsi_rs_ticket_report
|
Determines whether to call function string rs_ticket_report or not. rs_ticket_report function string is invoked
when dsi_rs_ticket_report is set to
on.
Default: on
|
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 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.
-
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
– 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.
Note:
You can only set dsi_serialization_method to no_wait if dsi_commit_control
is set to “on”.
These options are retained only for backward compatibility
with older versions of Replication Server:
Note:
The isolation_level_3 value is no longer supported as a
serialization method but it is the same as setting dsi_serialization_method to wait_for_start and dsi_isolation_level to 3.
Default: wait_for_commit
|
dsi_sqt_max_cache_size
|
Maximum SQT (Stable Queue Transaction interface) cache
size for the outbound queue, in bytes.
The default, “0,” means that the current setting of
sqt_max_cache_size 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 petabytes (2,251,799,813,685,247
bytes)
|
dsi_stage_all_ops
|
Prevents compilation for specified tables when you
configure SAP Replication Server and SAP IQ InfoPrimer integration.
If table history must be preserved, as in the case of
slowly changing dimension (SCD) tables, set dsi_stage_all_ops to on.
See dsi_stage_all_ops in the Heterogeneous
Replication Guide.
|
dsi_text_convert_multiplier
|
Changes the length of text or unitext datatype
columns at the replicate site. Use dsi_text_convert_multiplier when text or unitext datatype
columns must expand or contract due to character set conversion. Replication
Server multiplies the length of primary text or unitext data by the
value of dsi_text_convert_multiplier to
determine the length of text or unitext data at the replicate site. Its type is
float. -
If the character set conversion involves expanding
text or unitext datatype columns, set dsi_text_convert_multiplier equal to or
greater than 1.0.
-
If the character set conversion involves contracting
text or unitext datatype columns, set dsi_text_convert_multiplier equal to or
less than 1.0.
Default: 1
|
dsi_timer
|
Use the dsi_timer
configuration parameter to specify a delay between the time transactions
commit at the primary database and the time transactions commit at the
standby or replicate database. Replication Server processes transactions in
the outbound queue in commit order after the period of delay is over.
After you execute dsi_timer with alter
connection or alter logical
connection, suspend and resume the connection.
Specify the delay in the hh:mm format.
Note:
Replication Server does not support time zone
differences between the RepAgent or Replication Agent at the primary
database and the Replication Server with the DSI connection where you want
to execute dsi_timer.
|
dsi_top1_enable
|
For Adaptive Server databases,
set dsi_top1_enable to on to enable
replication of tables that do not have unique keys. If
a table does not have a unique key, it is possible that there are two or
more rows with the same values. However, DSI shuts down if it cannot find a
unique row to apply an operation. The dsi_top1_enable parameter instructs DSI to select and update
only the first instance of multiple similar rows by setting unsigned_integer to 1 in the top unsigned_integer clause of the Adaptive Server
select statement.
Default: off
Use configure replication server to set the
parameter for all replicate connections. Do not use configure replication server to set dsi_top1_enable to on if there are connections
to non-Adaptive Server replicate databases. Instead, use alter connection to set the parameter
individually for each Adaptive Server replicate database connection.
Replication Server does not support replication of a table
without unique keys if: - There is a customized function string for the
table.
- There is a table replication definition for the
table.
- Transactions use updates and deletes with the
like option in the where clause at the primary database.
- The replicate database is not Adaptive Server.
|
dsi_xact_group_size
|
The maximum number of bytes, including stable queue
overhead, to place into one grouped transaction. A grouped transaction is
multiple transactions that the DSI applies as a single transaction. A value
of –1 means no grouping.
SAP recommends that you set dsi_xact_group_size to the maximum value and use dsi_max_xacts_in_group to control the number of
transactions in a group.
Note:
Obsolete for Replication Server version 15.0 and later.
Retained for compatibility with older Replication Servers.
Maximum: 2,147,483,647
Default: 65,536 bytes
This parameter is ignored when dsi_compile_enable is turned
on.
|
dt_apply
|
Controls the maximum number of tasks that SAP Replication Server uses to
apply one transaction during high volume adaptive replication (HVAR) to SAP
ASE databases.
Default: 1 which means there is no distributed application of
transactions.
Minimum: 1
Maximum: 8
Note: The replicate SAP ASE data server
requires a separate license and configuration for distributed transaction
management (DTM) to support distributed application of transactions from SAP
Replication Server.
You can also use configure replication server to set
dt_apply at the server level for all connections.
Setting dt_apply at the connection level overrides any
server-level setting that you set.
SeeDistributed Application of Transactions in the DSI Thread
in the Administration Guide Volume 2.
|
dump_load
|
Set to “on” at replicate sites only to enable coordinated
dump. See the Loading from Coordinated Dumps in the Administration Guide Volume 2 .
Default: off
|
dynamic_sql
|
Turns dynamic SQL feature on or off for a connection.
Other dynamic SQL related configuration parameters will take effect only if
this parameter is set to on.
Note:
If dynamic_sql and
dsi_bulk_copy are both on, DSI applies bulk copy-in.
Dynamic SQL is used if
bulk copy-in is not used.
Default: off
Note: You must set dynamic_sql to off before
you enable real-time loading (RTL) replication to SAP IQ.
|
dynamic_sql_cache_management
|
Manages the dynamic SQL cache for a connection.
Values: -
mru – specifies that once dynamic_sql_cache_size is reached, the old dynamic SQL
prepared statements are deallocated to give room for new
statements.
-
fixed – specifies that once the dynamic_sql_cache_size is reached,
allocation for new dynamic SQL statements stops.
Default: fixed
|
dynamic_sql_cache_size
|
Allows Replication Server to estimate how many database
objects can use dynamic SQL for a connection. You can use dynamic_sql_cache_size to limit resource demand
on a data server.
Default: 100
Minimum: 1
Maximum: 65,535
|
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 the Replication Server
Administration Guide Volume 2 > Performance Tuning > Controlling the
Number of Commands the RepAgent Executor Can Process.
Default: 2,147,483,647
Minimum: 1
Maximum: 2,147,483,647
|
exec_max_cache_size
|
Specifies the amount of memory to allocate for the
Executor command cache.
Default: 1,048,576 bytes for 32-bit and 64-bit
Replication Servers.
For 32-bit Replication Server:
For 64-bit Replication Server: -
Minimum – 0
-
Maximum – 2,251,799,813,685,247 bytes
For setting, use configure
replication server for all database connections to Replication
Server or alter connection for a
specific database connection.
See Replication Server
Administration Guide Volume 2 > Performance Tuning > Suggestions for
Using Tuning Parameters > Executor Command Cache.
|
exec_nrm_request_limit
|
Specifies the amount of memory available for messages from
a primary database waiting to be normalized.
Set nrm_thread to ‘on’
with configure replication server before
you use exec_nrm_request_limit.
Minimum: 16,384 bytes
Maximum: 2,147,483,647 bytes
Default for:
-
32-bit – 1,048,576 bytes (1MB)
-
64-bit – 8,388,608 bytes (8MB)
After you change the configuration for exec_nrm_request_limit, suspend and resume the
Replication Agent.
License: Separately licensed under the Advanced Services
Option. See the Replication Server Administration
Guide Volume 2 > Performance Tuning > Replication Server – Advanced
Services Option.
|
exec_prs_num_threads |
Enables asynchronous parsing feature by starting multiple
parser threads for a specific connection from the primary database, and
specifies the number of asynchronous parser threads for the connection.
Default: 0 (disables asynchronous parser)
Minimum: 0
Maximum: 20
Note:
Before configuring the asynchronous parser, ensure that
smp_enable is on, and that the
Replication Server host machine can support additional threads for the
parsing.
|
exec_sqm_write_request_limit
|
Specifies the amount of memory available for messages
waiting to be written to an inbound queue.
Default: 1MB
Minimum: 16KB
Maximum: 2GB
|
md_sqm_write_request_limit
|
Specifies the amount of memory available to the
Distributor for messages waiting to be written to the outbound queue.
Note:
In 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: 16KB
Maximum: 2GB
|
parallel_dist |
Enables parallel processing in the distributor thread
(DIST) to improve replication throughput. Default:
off
For any change to the parameter to take effect,
you must: - Suspend and resume the distributor thread if you made the change for a
specific priimary database connection.
- Restart SAP Replication Server for a server-level change to all
primary database connections.
See Parallel Processing in DIST in the
Administration Guide Volume 2.
|
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 replication performance.
Default: off
|
reblock_ddntf
|
(Only for replication from SAP Business Suite on DB2 UDB
database to any supported database) Specifies whether Replication Server
should adjust each FIELDS column length in the replicate database to 32768
characters except the last row.
Values are 'on' and 'off'.
Default is 'on'.
|
rep_as_standby
|
When the database is marked with
sp_reptostandby and rep_as_standby is on, tables with a table replication
definition not covered by a database replication definition are replicated.
To replicate the tables, set:
Default: off
|
replicate_minimal_columns
|
Specifies whether Replication Server should send all
replication definition columns for all transactions, or only those needed to
perform update or delete operations at the replicate database.
Values are On and Off.
Replication Server uses this connection-level parameter
when a replication definition does not contain the replicate minimal columns clause, or if there is no
replication definition at all. Note: If your replication
definition has replicate all columns
and the replicate_minimal_columns
connection property is set to ‘on’, the connection replicates minimal
columns. If you want to replicate all columns to your
target database, even if there is no change to the column values for the
row, set replicate_minimal_ columns
values for the DSI connection to “off”.
You can use admin
config to display replicate_minimal_columns configuration information.
When you set dsi_compile_enable to ‘on’, Replication Server ignores what you
set for replicate_minimal_columns.
See the Replication Server
Administration Guide Volume 2 > Performance Tuning > Using
replicate_minimal_columns with Dynamic SQL .
|
sapsystemname
|
(Only for replication from SAP Business Suite) Specifies the environment
variable for the SAP system name, that is <sid>.
|
sap_trim_len
|
(Only for
replication from SAP Business Suite on Oracle database to any supported
database) Specifies whether Replication Server should truncate the first two
bytes during replication if: - The application datatype (DDIC type) of the column is RAW or LRAW,
and
- The DDIC type length is greater than 255 bytes.
Values are 'on' and 'off'.
Default: 'off'
|
save_interval
|
The number of minutes that the Replication Server saves
messages after they have been successfully passed to the destination data
server. See the Replication Server Administration
Guide Volume 2 for details.
Default: 0 minutes
|
sqm_cmd_cache_size
|
The maximum size, in bytes, of parsed data that
Replication Server can store in the SQM command cache.
32-bit Replication Server: - Default – 1,048,576
- Minimum –
0, which disables SQM command caching
- Maximum –
2,147,483,647
64-bit Replication Server: - Default – 20,971,520
- Minimum –
0
- Maximum –
2,251,799,813,685,247
Replication Server ignores any value you set for sqm_cmd_cache_size if cmd_direct_replicate or sqm_cache_enable is off.
Use configure
replication server to set the parameter at the server level for
all connections, or use alter
connection at the database level for individual connections.
|
sqm_max_cmd_in_block
|
Specifies, in each SQM block, the maximum number of
entries with which the parsed data can associate.
Default: 320
Minimum: 0
Maximum: 4096
Set the value of sqm_max_cmd_in_block to the number of entries in the SQM block.
Depending on the data profile, each block has a different number of entries
because the block size is fixed, and the message size is unpredictable. If
you set a value that is too large, there is memory waste. If you set a value
that is too small, replication performance is compromised.
Replication Server ignores any value you set for
sqm_max_cmd_in_block if cmd_direct_replicate or sqm_cache_enable is off.
|
sqt_max_prs_size
|
Maximum memory, in bytes consumed by commands unpacked by
the transaction profiling processes for HVAR and RTL.
For 32-bit Replication Server:
For 64-bit Replication Server: -
Default – 2,147,483,647 (2GB)
-
Minimum – 0
-
Maximum – 2,251,799,813,685,247
Use
configure replication server to set
the parameter at the server level for all connections, or use alter connection at the database level for
individual connections. The default value at the database level is 0. If you
retain the database-level default or reset to the default, Replication
Server uses the value set at the server level.
After you upgrade to Replication Server 15.7.1 SP100 and
later, you must set the default to 2GB for both 32-bit and 64-bit
Replication Server.
|
stage_operations
|
Set to on for Replication Server to write operations to
staging tables for the specified connection when you configure Replication
Server and SAP IQ InfoPrimer integration.
See stage_operations in the Heterogeneous
Replication Guide .
|
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: 16KB
Maximum: 2GB
|
unicode_format
|
Supports
sending unicode data in U&” format
which removes the limitation of UTF-8 character set in Replication
Server.
Set unicode_format
to one of these values: -
string – unicode characters are
converted to character string format. For example, the string “hello” is sent out as “hello”. In
this case Replication Server requires UTF-8.
- ase – unicode characters are sent out in
U&’’ format. For example, the
string “hello” is sent out as
“U&'\0068\0065\006c\006c\006f’ ”. The two-byte unicode value is sent
in network order as required by Adaptive Server Enterprise. In this case
Replication Server can use a character set other than UTF-8.
Default: string
|
use_batch_markers
|
Controls the processing of function strings rs_batch_start and rs_batch_end. If use_batch_markers is set to on, the rs_batch_start function string is prepended to each batch of
commands and the rs_batch_end function
string is appended to each batch of commands.
Set use_batch_markers
to on only for replicate data servers that require additional SQL to be sent
at the beginning or end of a batch of commands that is not contained in
the rs_begin function string.
Default: off
|