ASA primary data servers

This section describes the primary database issues and considerations specific to the Adaptive Server Anywhere (ASA) data server in a Sybase replication system.

ASA is a different relational database than Sybase Adaptive Server Enterprise, which is the original primary data server supported by Replication Server. Adaptive Server Enterprise is designed specifically for high-performance OLTP (online transaction processing) and mixed workload enterprise computing. By contrast, ASA is designed for the following applications:

ASA Replication Agent

As a primary data server in a replication system, ASA interacts with the Adaptive Server Anywhere Replication Agent. The ASA Replication Agent is responsible for identifying and transferring transactions from the ASA primary database to a primary Replication Server.

ASA primary database permissions

A script file is provided with ASA to set up an ASA database to function as a primary database. The rssetup.sql script file performs the following operations to set up ASA as a primary database for replication:

Replication intrusions and impacts in ASA

Setting REPLICATE ON for an ASA table places additional information in the database transaction log whenever an insert, update, or delete operation occurs on the table. The additional information significantly increases the log resources used by the server. The ASA Replication Agent uses this information to submit the full before image of the row, where required, to Replication Server for replication.

Primary database connectivity for ASA

By default, the ASA Replication Agent uses the sa user ID and password created by the rssetup.sql command file to log in to the ASA primary database.

You must create the user ID and password that the ASA Replication Agent uses to log in to the primary Replication Server. Record these values in the rs_user and rs_pw configuration parameters in the ASA Replication Agent configuration file. This user ID must have been defined and granted connect source permission in the primary Replication Server.

A Replication Server database connection name is made up of two parts: a data server name (server_name) and a database name (db_name). Record these values in the RS_source_ds and RS_source_db configuration parameters in the ASA Replication Agent configuration file.

The primary Replication Server does not use the source_db portion of the Replication Server database connection. Instead, Replication Server obtains the database name from the command line of the data server identified in the source_ds portion of the Replication Server database connection. However, you must include a database name in the Replication Server create connection statement to conform to the syntax.

Primary database limitations in ASA

One ASA Replication Agent is required for each ASA primary database from which transactions are replicated.

The ASA Replication Agent does not “pre-read” data from the RSSD of the primary Replication Server, as other Replication Agents do.

You cannot substitute an ASA Replication Agent for an Adaptive Server Enterprise Replication Agent (Replication Agent), because the ASA and Adaptive Server Enterprise transaction logs have different formats.

ASA primary database configuration issues

In ASA, all database object identifiers are not case sensitive (that is, uppercase and lowercase are treated as the same). In Adaptive Server Enterprise, database object identifiers are case sensitive by default. With ASA, you must ensure that the case of database object identifiers matches in all parts of the SQL statements to ensure compatibility with Adaptive Server Enterprise.

Replication definitions for primary tables in ASA

Because the ASA Replication Agent does not “pre-read” data from the RSSD of the primary Replication Server, the entire row for all replicated operations is sent to the primary Replication Server. By contrast, other Replication Agents can selectively send only those columns identified by the replication definition.

ASA primary datatype translation issues

ASA supports data of zero length that is not NULL. However, non-null long, varchar, and long binary data of zero length are replicated to a replicate site as NULL.

If a primary table has columns with unsupported datatypes, you can replicate the data if you create a replication definition using a compatible supported datatype. For example, to replicate a double column, you could define the column as float in the replication definition.

ASA system management issues

Replication Server Manager support for ASA is not implemented in version 12.6.

Other primary database issues for ASA

One of the differences between the Adaptive Server Enterprise Replication Agent (RepAgent thread) and the ASA Replication Agent is that while the Adaptive Server Enterprise RepAgent thread depends on a temporary recovery database for access to old transactions, the ASA Replication Agent depends on access to old transaction logs. No temporary recovery database exists for the ASA Replication Agent.