Chapter 12 Working with Replication Server
A physical database connection connects a Replication Server to a local database that contains primary or replicate data. A Replication Server distributes messages to and from a database via a connection.
You design a connection the following way:
Replication Server concept | PowerDesigner concept |
---|---|
Connection | Data connection |
The following extended attributes are available from the data connection property sheet:
Name | Internal Code | Description |
---|---|---|
Connection option | ConnectionOption | Option for a connection: dsi_suspended or log transfer on |
Batch | DatabaseParameter_batch | Specifies how Replication Server sends commands to data servers. When batch is "on," Replication Server may send multiple commands to the data server as a single command batch. When batch is "off," Replication Server sends commands to the data server one at a time |
Batch begin | DatabaseParameter_batch_begin | Indicates whether a begin transaction can be sent in the same batch as other commands (such as insert, delete, and so on) |
Command retry | DatabaseParameter_command_retry | Specifies the number of times to retry a failed transaction. The value must be greater than or equal to 0 |
Packet size | DatabaseParameter_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. You may change this value if you have a System 10 or later SQL Server or Adaptive Server that has been reconfigured |
Disk affinity | DatabaseParameter_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 |
Character convert | DatabaseParameter_dsi_charset_convert | The specification for handling character-set conversion on data and identifiers between the primary Replication Server and the replicate Replication Server. This parameter applies to all data and identifiers to be applied at the DSI in question |
Command batch size | DatabaseParameter_dsi_cmd_batch_size | The maximum number of bytes that Replication Server places into a command batch |
Command separator | DatabaseParameter_dsi_cmd_separator | The character that separates commands in a command batch |
Check locks interval | DatabaseParameter_dsi_commit_check_locks_intrvl | Specifies 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 function string. Used with parallel DSI |
Check locks times | DatabaseParameter_dsi_commit_check_locks_logs | Specifies 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 |
Max check locks times | DatabaseParameter_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 |
Commit control | DatabaseParameter_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) |
Request stored procedure | DatabaseParameter_dsi_exec_request_sproc | Turns on or off request stored procedures at the DSI of the primary Replication Server |
Fade out time | DatabaseParameter_dsi_fadeout_time | Specifies the number of seconds of idle time before a DSI connection is closed. A value of "-1" indicates that a connection will not close |
Ignore underscore name | DatabaseParameter_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 |
Keep triggers | DatabaseParameter_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 |
Number of transactions in log | DatabaseParameter_dsi_large_xact_size | Specifies the number of commands allowed in a transaction before the transaction is considered to be large |
Number of commands in log | DatabaseParameter_dsi_max_cmds_to_log | Specifies the number of commands to write into the exceptions log for a transaction. The value "–1" stands for all commands |
Number of bytes in log | DatabaseParameter_dsi_max_text_to_log | Specifies 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, image or raw object columns from filling the RSSD or its log. The value "-1" means all text, image, or rawobject columns |
Number of transactions in group | DatabaseParameter_dsi_max_xact_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 - 100 |
Number of parallel threads | DatabaseParameter_dsi_num_large_xact_threads | Specifies 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 |
Number of threads | DatabaseParameter_dsi_num_threads | Specifies the number of parallel DSI threads to be used. The maximum value is 255 |
Partitioning rule | DatabaseParameter_dsi_partitioning_rule | Specifies the partitioning rules (one or more) the DSI uses to partition transactions among available parallel DSI threads |
Replication | DatabaseParameter_dsi_replication | Specifies whether or not transactions applied by the DSI are marked in the transaction log as being replicated |
Serialization method | DatabaseParameter_dsi_serialization_method | Specifies the method used to maintain serial consistency between parallel DSI threads when applying transactions to a replicate data server |
SQL data style | DatabaseParameter_dsi_sql_data_style | Formats datatypes (particularly date/time, binary, bit and money) to be compatible with: DB2 ("db2"), Lotus Notes ("notes"), SQL Anywhere, formerly Watcom SQL ("watcom") or SQL Remote ("sqlremote") |
Cache size | DatabaseParameter_dsi_sqt_max_cache_size | Maximum SQT (Stable Queue Transaction interface) cache memory for the database connection, 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. To confirm the current value of sqt_max_cache_size, execute rs_configure |
Text convert multiplier | DatabaseParameter_dsi_text_convert_multiplier | Changes the length of text datatype columns at the replicate site. Use dsi_text_convert_multiplier when text datatype columns must expand or contract due to character set conversion. Replication Server multiplies the length of primary text data by the value of dsi_text_convert_multiplier to determine the length of text data at the replicate site. Its type is float |
Group size | DatabaseParameter_dsi_xact_group_size | Specifies 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 |
Dump load | DatabaseParameter_dump_load | Set to "on" at replicate sites only to enable coordinated dump |
Number of commands per timeslide | DatabaseParameter_exec_cmds_per_timeslice | Specifies the number of LTL commands an LTI or RepAgent Executor thread can possess before it must yield the CPU to other threads |
LTI write request limit | DatabaseParameter_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 |
Distributor write request limit | DatabaseParameter_md_sqm_write_request_limit | Specifies the amount of memory available to the Distributor for messages waiting to be written to the outbound queue |
Parallel DSI | DatabaseParameter_parallel_dsi | Provides a shorthand method for configuring parallel DSI threads. A setting of "on" configures these values: 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 A setting of "off" configures these parallel DSI values to their defaults |
Save interval | DatabaseParameter_save_interval | Specifies the number of minutes that the Replication Server saves messages after they have been successfully passed to the destination data server |
Subscription write request limit | DatabaseParameter_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 |
Dump marker | DumpMarker | If this connection is in a connection group, then it can be flagged as dump marker |
Error string class | ErrorClass | Name of the error class |
Function string class | FunctionClass | Name of the function class |
Password | Password | Maintenance user password |
Message confidentiality | SecurityParameter_msg_confidentiality | Indicates whether Replication Server sends and receives encrypted data. If set to "required," outgoing data is encrypted. If set to "not required," Replication Server accepts incoming data that is encrypted or not encrypted |
Message integrity | SecurityParameter_msg_integrity | Indicates whether data is checked for tampering |
Message origin check | SecurityParameter_msg_origin_check | Indicates whether the source of data should be verified |
Message replay detection | SecurityParameter_msg_replay_detection | Indicates whether data should be checked to make sure it has not been read or intercepted. |
Message sequence check | SecurityParameter_msg_sequence_check | Indicates whether data should be checked for interception |
Mutual authorization | SecurityParameter_mutual_auth | Requires remote server to provide proof of identify before a connection is established |
Security mechanism | SecurityParameter_security_mechanism | The name of the third-party security mechanism enabled for the pathway |
Unified login | SecurityParameter_unified_login | Indicates how Replication Server seeks to log in to remote data servers and accepts incoming logins |
Use security services | SecurityParameter_use_security_services | Tells Replication Server whether to use security services. If use_security_services is "off," no security features take effect. This parameter can only be set by configuring Replication Server." |
User name | UserName | Maintenance user name. |
Stop Unsupported Commands (Replication Server 15.0 only) | DatabaseParameter_dist_stop_unsupported_cmd | When set to on, DIST suspends itself if a command is not supported by downstream Replication Server. When set to off, DIST ignores the unsupported command. Regardless of dist_stop_unsupported_cmd parameter's setting, 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 Replication Server. |
DSI isolated level (Replication Server 15.0 only) | DatabaseParameter_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. NoteData servers supporting other isolation levels are supported as well through the use of the rs_set_isolation_level function string. Replication Server supports all values for replicate data servers. The default value is the current transaction isolation level for the target data server. |
Replication DDL (Replication Server 15.0 only) | DatabaseParameter_dsi_replication_ddl | Specifies whether or not transactions are to be replicated back to the original database to support bidirectional replication. When 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. |
Use batch markers (Replication Server 15.0 only) | DatabaseParameter_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.. |
Copyright (C) 2007. Sybase Inc. All rights reserved. |