Show TOC

RepAgent Configuration Parameters Locate this document in the navigation structure

Use sp_config_rep_agent configuration parameters to configure and control RepAgent behavior.

RepAgent Configuration Parameter

Description

'activate monitoring', {'true' | 'false'}

Enables the monitoring and collection of timing information.

The information is collected in Adaptive Server monitoring tables. You can query the tables to obtain the collected information. See Adaptive Server Enterprise Performance and Tuning Series: Monitoring Tables.

Valid values: true or false

Default: false

'auto start', {'true' | 'false'}

Specifies whether RepAgent automatically starts when Adaptive Server restarts and recovers the database. Set to true for RepAgent to start automatically when you restart Adaptive Server.

Valid values: true or false

Default: false

'batch ltl'[, 'true' | 'false']

Specifies whether RepAgent sends LTL commands to Replication Server in batches or one command at a time.

When set to true, sends LTL commands to Replication Server in batches. Otherwise, sends LTL commands to Replication Server one at a time.

Valid values: true or false

Default: true

'bind to engine'[, <engine_number>]

Restricts the RepAgent execution to the engine number specified. You can improve the RepAgent performance by running RepAgent on a dedicated or less utilized engine.

Note The bind to engine clause does not restrict other user tasks or system tasks from running on the specified engine number.

See Configuring Engines in Threaded Mode in the Adaptive Server Enterprise System Administration Guide: Volume 2 for a description of max online engines.

Valid values: from -1 to (max online engines - 1)

Default: -1, which means RepAgent can execute on any engine

'connect database'[, '<connect_database_name>']

Specifies the name of the temporary database RepAgent uses when connecting to Replication Server in recovery mode. This is the database name RepAgent uses for the connect source command; it is normally the primary database

'connect dataserver'[, '<connect_dataserver_name>']

Specifies the name of the data server RepAgent uses when connecting to Replication Server in recovery mode. This is the data server name RepAgent uses for the connect source command; it is normally the data server for the primary database.

'cluster instance name'[, 'coordinator' | '<instance_name>']

Controls the instance where RepAgent is started. By default, RepAgent starts at the instance with the coordinator role. However, you can configure RepAgent to start at any declared instance in the cluster.

Valid values: coordinator or instance name

Default: coordinator

'data limits filter mode'[, 'off' | 'stop' | 'skip' |'truncate']

Specifies how RepAgent handles log records containing column counts greater than 250, column lengths greater than 255 bytes, and parameter lengths greater that 255 bytes before attempting to send them to Replication Server.

Valid values:
  • off – RepAgent allows all records to pass through. In Replication 12.1 and earlier, this setting can cause undesirable effects

  • stop – RepAgent shuts down if it encounters log records containing data that exceeds limits of Replication Server 12.1 and earlie.

  • skip – RepAgent skips log records containing data that exceeds limits of Replication Server 12.1 and earlier and posts message to error log

  • truncate – RepAgent truncates data exceeding 255 bytes per column and 250 columns per table.

Default:
  • off – Replication Server 12.5 and later
  • stop – in Replication Server 12.1 and earlier
Note SAP recommends that you do not use the data_limits_filter_mode, off setting with Replication Server version 12.1 or earlier as this may cause RepAgent to skip or truncate wide data, or to stop.

'ddl path for unbound objects', {'all' | 'default'}

Specifies whether to send SQL and DDL statements for unbound objects over all paths or the default path in a multi-path replication environment.

Valid values: all or default

Default: all

'disable'[, 'preserve secondary truncpt']

Unmarks the database as using RepAgent. Use preserve secondary truncpt to retain the secondary truncation point. The default sets the secondary truncation point to IGNORE; that is, it disables it.

Use disable only when downgrading the Replication Server to an earlier version or changing the primary database to another status. This command truncates all RepAgent entries in the sysattributes table.

'enable', '<repserver_name>', '<repserver_username>', '<repserver_password>'

Marks the database as using RepAgent and sets the secondary truncation point to valid.

This parameter encodes the Replication Server password and inserts the Replication Server name, Replication Server user, and encoded password into thesysattributes table of the specified database:
  • <repserver_name> – the name of the Replication Server to which RepAgent connects and transfers log transactions
  • <repserver_username> – the user name that RepAgent thread uses to connect to Replication Server
  • <repserver_password> – the password that RepAgent uses to connect to Replication Server.

    If network-based security is enabled and you want to establish unified login, you must specify NULL for <repserver_password> when enabling RepAgent at the database.

'ha failover'[, 'true' |'false']

Specifies whether, when SAP Failover has been installed, RepAgent automatically starts after server failover.

Valid values: true or false

Default: true

'ltl batch size'[,< ltl_batch_size>]

Sets the maximum size, in bytes, of LTL data that a RepAgent can send to the Replication Server in a batch.

You can improve RepAgent performance by increasing the LTL batch size to a bigger number. At the end of each LTL batch, RepAgent checks for errors in the previous batch. Increasing the LTL batch size, decreases the number of times RepAgent checks for LTL errors.

Valid values:16,384 to 2,147,483,647 bytes

Default: 16,384 bytes

'ltl metadata reduction', {'true' |'false'}

Set to true to enable table metadata reduction for RepAgent. Replication Server automatically enables caching using the Executor command cache if you enable table metadata reduction in RepAgent.

See Replication Server Administration Guide Volume 2 > Performance Tuning > Suggestions for Using Tuning Parameters > Executor Command Cache.

Valid values: true or false

Default: false

'max number replication paths', {'<max number replication paths value>'}

Sets the maximum number of paths that you allow RepAgent to use to replicate data out of the primary database through multiple replication paths. RepAgent generates one RepAgent sender thread for each RepAgent path.

If max number replication paths is less than the number of paths with replication objects bound to the paths, RepAgent reports an error and terminates

To build multiple primary replication paths, enable multithreaded RepAgent with the multithread rep agent RepAgent parameter.

If max number replication paths is greater than 1, and you do not set multipath distribution model to connection, RepAgent continues to use the default path for all replicated objects that you do not specifically bind to a path.

See Replication Server Administration Guide Volume 2 > Performance Tuning > Multi-Path Replication > Multiple Primary Replication Paths > Enabling Multithreaded RepAgent and Multiple Paths for RepAgent > Setting the Maximum Number of Replication Paths for RepAgent.

Valid values: 1 to the value of MAXINT, which is 2,147,483,647 path.

Default: 1

'max schema cache per scanner'[, '<max_schema_cache_per_scanner_value>']

Sets the maximum amount of mermory in bytes that each scanner thread can use to store object schema required for replication.

f you configure RepAgent with multiple scanners for a multipath replication environment, RepAgent provides each scanner with its own schema cache with max schema cache per scanner as the maximum size of the cache for each scanner. Adaptive Server allocates memory for each scanner schema cache from the existing RepAgent global memory pool which you can configure with sp_configure 'replication agent memory size'. The total amount of memory all the scanner schema caches require is max schema cache per scanner multiplied by the number of paths in use.

Note

Ensure that there is sufficient memory in the RepAgent memory pool before you change max schema cache per scanner.

You must restart RepAgent for the change in max schema cache per scanner to take effect.

Valid values: 524,288 bytes to the value of MAXINT, which is 2,147,483,647 bytes

Default: 524,288 bytes

'max writetext groups'[, '<max writetext groups_value>']

Specifies the maximum number of off-row LOB data chunks that RepAgent sends in a single rs_writetext LTL command.

Increasing the value of max writetext groups increases the size of the LOB data that is sent in a single rs_writetext command.

The max writetext groups parameter affects only non-compressible off-row LOB data.

When a system replicates a large amount of off-row LOB data, increasing the value of max writetext groups may improve replication performance. However, increasing the data chunk size sent by RepAgent may cause fragmentation in the inbound queue that may lead to an increase in memory consumption. Therefore, if you increase the max writetext groups value in SAP ASE, SAP recommends that you increase the SAP Replication Server block size using the SAP Replication Server block_size parameter to decrease fragmentation. See Increase Queue Block Size in the Administration Guide Volume 2.

Valid values: 1 to 9

Default: depends on the SAP ASE page size. See Default Values for 'max writetext groups' Parameter.

'msg confidentiality'[, 'true' | 'false']

Specifies whether to encrypt all messages sent to Replication Server.

Valid values: true or false

Default: false

'msg integrity'[, 'true' | 'false']

Specifies whether all messages exchanged with Replication Server should be checked for tampering.

Valid values: true or false.

Default: false

'msg origin check'[, 'true' | 'false']

Specifies whether to check the source of each message received from Replication Server.

Valid values: true or false

Default: false

'msg out-of-sequence check'[, 'true' | 'false']

Specifies whether to check the sequence of messages received from Replication Server.

Valid values: true or false

Default: false

'msg replay detection'[, 'true' | 'false']

Specifies whether messages received from Replication Server should be checked to make sure they have not been intercepted and replayed.

Valid values: true or false

Default: false

'multipath distribution model', {'object'|'connection'|'filter'}

Sets the multipath distribution model for RepAgent, where:
  • object – distribution by object binding. RepAgent binds objects such as tables and stored procedures to specific replication paths to enable the replication of these objects in parallel.
  • connection – distribution by connection. RepAgent distributes transactions through a replication path according to the unique system process ID (spid) and number of available replication paths.
  • filter – distribution by filter. RepAgent distributes transactions through a replication path according to the value of data in one or more columns from a row in a single primary table.

Default: object

If you change the distribution model and you add new bindings or have existing bindings that RepAgent cannot associate with the new distribution model, RepAgent displays a warning that it will ignore some bindings under the new distribution model. However, RepAgent retains the inactive bindings. If you revert to the distribution model that corresponds with the type of the inactive bindings, RepAgent once again uses the formerly inactive bindings. For example, if you change to distribution by column filter from distribution by object binding, RepAgent ignores all the table and stored procedure bindings that you have set.

'multiple_scanners', {'true' | 'false'}

Enables or disables multiple RepAgent scanner threads.

Valid values: true or false

Set to true for RepAgent to generate multiple scanner threads with a scanner thread dedicated to each path in a multipath replication environment.

Default is false where there is only a single scanner thread shared by all replication paths.

You must restart RepAgent for any change to take effect.

'multithread rep agent', {'true' | 'false'}

Set to true to enable multithreaded RepAgent which uses separate threads for the RepAgent scanner and sender activities. Enabling multithreaded RepAgent is a prerequisite to build multiple primary replication paths.

Valid values: true or false

Default: false

See Replication Server Administration Guide Volume 2 > Performance Tuning > Multi-Path Replication > Multiple Primary Replication Paths > Enabling Multithreaded RepAgent and Multiple Paths for RepAgent > Enabling Multithreaded RepAgent.

'mutual authentication'[, 'true' | 'false']

Specifies whether RepAgent should require mutual authentication checks when connecting to Replication Server.

Valid values: true or false

Default: false

'net password encryption'[, ‘true’ | ‘false’]

Specifies whether connections from RepAgent to a Replication Server are to be initiated with a client-side password encryption handshake or with the usual unencrypted password handshake sequence.

Valid values: true or false

Default: true

'number of send buffers', {'<num_of_send_buffers>'}

Sets the maximum number of send buffers that the scanner and sender tasks of multithreaded RepAgent can use.

Enable multithreaded RepAgent with the multithread rep agent RepAgent parameter to build multiple primary replication paths.

Range of valid values: 50 to the value of MAXINT which is 2,147,483,647 buffers

Default: 500 buffers

You need not restart RepAgent for the change to take effect.

See Replication Server Administration Guide Volume 2 > Performance Tuning > Multi-Path Replication > Multiple Primary Replication Paths > Enabling Multithreaded RepAgent and Multiple Paths for RepAgent > Setting the Number of Send Buffers.

'priority'[, 'priority_value']

Sets relative priority values for individual RepAgents.

Range of valid values for priority is 0 to 7:

  • 0 – highest priority
  • 4 – recommended high priority setting
  • 5 – recommended medium priority setting
  • 6 – recommended low priority setting

Default: 5

SAP recommends that you do not set the value of priority to 0, as it may negatively impact performance.

'retry timeout'[, '<retry_timeout_in_seconds>']

Specifies the number of seconds RepAgent sleeps before attempting to reconnect to Replication Server after a retryable error or when Replication Server is down.

Default: 60 seconds

'rs servername'[, '<repserver_name>']

The name of the Replication Server to which RepAgent connects and transfers transactions from the transaction log. Use rs servername when you have changed the name of the Replication Server.

'rs username'[, '<repserver_username>']

The user name RepAgent uses to log in to Replication Server. Use rs username when you want to change the RepAgent user name.

'rs password'[, '<repserver_password>']

The password RepAgent uses to log in to Replication Server. Use rs password when you want to change the RepAgent password.

'scan batch size'[,'<no_of_qualifying_log_records>']

Specifies the maximum number of log records to send to Replication Server in each batch. When this number of records have been sent, RepAgent asks Replication Server for a new secondary truncation point.

The scan batch size parameter is only in effect if you do not enable multipath replication.
  • If you do not enable multipath replication, the frequency that RepAgent asks for the secondary truncation point depends on a combination of scan batch size and ltl batch size. RepAgent queues the secondary truncation point request for processing when the number of log records in a batch reaches the value of scan batch size. However, RepAgent sender thread only processes the queued secondary truncation point request when RepAgent sends the number of bytes of LTL data specified in ltl batch size to Replication Server. Although increasing ltl batch size improves replication performance, consider the effect on the number of secondary truncation point requests to avoid situations where the primary database log becomes full because the secondary truncation point is not moving fast enough.

  • If you enable multipath replication, trunc point request interval determines the frequency of secondary truncation point requests from RepAgent to Replication Server.

Default: 1000 records

'scan timeout'[, '<scan_timeout_in_seconds>']

Specifies the number of seconds that RepAgent sleeps once it has scanned and processed all records in the transaction log and Replication Server has not yet acknowledged previously sent records by sending a new secondary truncation point. RepAgent again queries Replication Server for a secondary truncation point after scan timeout seconds.

RepAgent continues to query Replication Server until Replication Server acknowledges previously sent records either by sending a new secondary truncation point or extending the transaction log.

If Replication Server has acknowledged all records and no new transaction records have arrived at the log, RepAgent sleeps until the transaction log is extended.

Default: 15 seconds

'security mechanism'[, '<mechanism_name>']

Specifies the network-based mechanism RepAgent uses to connect to Replication Server.

'send buffer size'[, ‘2K’ | ‘4K’ |’8K’ | ‘16K’]

Controls the size, in kilobytes, of the send buffer that RepAgent uses to communicate with Replication Server. Increasing the size of the send buffer reduces the number of times RepAgent communicates with Replication Server, but increases the amount of memory used.

Note

Send-buffer size is not related to database page size.

Valid values: 2K, 4K, 8K, and 16K

Default: 2K

'send maint xacts to replicate'[, 'true' | 'false']

Specifies whether RepAgent should send records from the maintenance user to the Replication Server for distribution to subscribing sites.

When set to true, RepAgent sends records generated by the maintenance user to the Replication Server for distribution to subscribing sites. Otherwise, RepAgent does not send records from the maintenance user to the Replication Server.

Valid values: true or false

Default: false

'send structured oqids'[, ‘true’ | ‘false’]

Specifies whether RepAgent sends origin queue IDs (OQIDs) as structured tokens or as binary strings, which saves space in the LTL and thus improves throughput.

Valid values: true or false

Default: false

'send warm standby xacts'[, ‘true’ | ‘false’]

Specifies whether RepAgent sends maintenance user transactions, schema changes, and system transactions to the warm standby database. This option should be used only with the RepAgent for the current active database in a warm standby configuration.

Normally schema and system transactions are not sent to a warm standby database. When set to true, RepAgent sends schema, system, and maintenance-user transactions. Otherwise, RepAgent does not send transactions to the standby database.

Valid values: true or false

Default: false

'short ltl keywords'[, 'true' | 'false']

Specifies whether RepAgent sends an abbreviated form of LTL to Replication Server, requiring less space and reducing the amount of data sent. When set to true, RepAgent uses the shortened LTL form that requires less space and reduces the amount of data sent to Replication Server.

Valid values: true or false

Default: false

'skip ltl errors'[, 'true' | 'false']

Specifies whether RepAgent ignores errors in LTL commands. This option is normally used in recovery mode. When set to true, RepAgent logs and then skips errors returned by the Replication Server for distribute commands. When set to false, RepAgent shuts down when these errors occur.

Valid values: true or false

Default: false.

'skip unsupported features'[, 'true' | 'false']

Instructs RepAgent to skip log records for Adaptive Server features unsupported by the Replication Server. Use this option when Replication Server is at an earlier version than Adaptive Server.

Valid values: true or false

Default: false

'startup delay'[, '<delay_value>']

Controls when a specific RepAgent is started during Adaptive Server start-up. This delays the automatic start-up of RepAgent by a specified duration to allow Replication Server to be running before RepAgent attempts to connect to Replication Server. By default, RepAgent starts without any delay during automatic start-up. Setting a value in seconds results in a delay in RepAgent start-up by the specified number of seconds.

Default: 0 (zero) seconds

'trunc point request interval'[, '<trunc_point_request_interval_value>']

Sets the frequency of secondary truncation point requests from RepAgent to Replication Server

You do not need to restart RepAgent after you make a change to the parameter value as the parameter is dynamic. However, RepAgent applies the new value only when the previous interval expires. For example, if current interval is 60 seconds and you change the interval to 100 seconds, the new 100 second interval only starts after the current 60 second interval expires.

Range of values: 1 second to the value of MAXINT, which is 2,147,483,647 seconds

Default: 10 seconds

'unified login'[, 'true' | 'false']

When a network-based security system is enabled, specifies whether RepAgent seeks to connect to other servers with a security credential or password.

Valid values: true or false

Default: false