When you activate a configuration, through the activate config command in sp_ctrl, SharePlex does the following:
The activation of a configuration generally proceeds as follows.
1. Assign an activation ID
SharePlex assigns an activation ID number to each configuration activation and its associated replication processes and queues. A configuration can be activated many times, and this ID keeps track of each one.
2. Create an object cache
SharePlex builds an object cache that records the standard metadata needed to support replication: the name, size, and type of columns, NOT-NULL constraints, and whether a column is part of a key. For tables using partitioned replication, additional information is stored.
3. Add a configuration change marker
SharePlex places a configuration-change marker in the data stream. This marker directs sp_cop to generate a new set of replication processes and queues. If another configuration is active for the same datasource, the marker deactivates it, causing the removal of the old processes and queues after the data they contain is posted.
4. Lock the tables, add the activation marker, unlock
(Oracle only) SharePlex locks the tables that are listed in the configuration file so that it can obtain information about them while they are in a read-consistent state. As many tables can be locked concurrently as there are locking threads available. When SharePlex locks a table, it places an activation marker in the data stream that tells the Capture process to start (or stop) replicating that table.
Note: If an application uses NOWAIT locking on tables in the replication configuration, the NOWAIT could fail if it attempts to obtain a lock on an object that is already locked because it is being activated.
SharePlex locks the following:
- All tables added to replication (new and reactivated configurations)
- All tables removed from replication (reactivated configurations)
- All tables where routes changed (reactivated configurations)
Each table is locked for a very short time, just long enough to activate a table. Replication of each table begins as soon as its activation is complete. Should one or more table fail to activate, SharePlex continues with the activation of the other tables. Users can access the data in a source table when the activation lock is released.
Use sp_ctrl commands to activate, deactivate and view information about a configuration activation, as well as to reconcile ongoing changes with a copy. For more information about these commands, see the SharePlex Reference Guide.
Activate a configuration file |
activate config
Starts the activation and retains control of the sp_ctrl command line until the activation is finished. |
View configuration statistics |
show config
Shows statistics for active configurations. It displays the status of a configuration (active or inactive), the datasource, the date and time the configuration was activated, and the number of objects that are configured. |
Deactivate a configuration file |
deactivate config or abort config
The purposes of these commands are different, but both deactivate a configuration file.
- deactivate config gracefully terminates replication for an active configuration. It stops all Capture activity for the configuration, posts all data currently in the queues, and removes the associated SharePlex processes and queues.
- abort config is a forceful deactivation. It stops all replication activity for the configured datasource on the source and target systems, whether or not data in the queues has been posted.
Deactivating or aborting a configuration stops replication. If users continue making changes to the configured objects, the source and target data can go out of synchronization. |
Reconcile replicated changes with the copy |
reconcile
(Valid for an Oracle source only) Coordinates the results of ongoing replication with a copy of the source data that is applied to the target system, so that changes that occurred before the copy are discarded. |
View replication status |
status
Shows a summary of the status of replication to help you ensure that processes are running and to check for errors, warnings or notices. |
View queue status |
qstatus
Shows statistics for the capture, post, and export queues. |
Activation of a configuration is an event that requires a series of actions to be taken in a timely manner, uninterrupted. Therefore, it is important to have all of your preparations done ahead of time, leaving nothing in question. You can activate a configuration if you performed the minimal requirements outlined in this topic.
Note: These instructions apply to Oracle source databases, unless otherwise noted.
Required authorization level
Only a SharePlex Administrator can activate a configuration. Additional users should be assigned to monitor SharePlex and perform basic operational procedures. For more information, see Assign SharePlex users to security groups.
Required setup
- Before you activate a configuration, make certain that the objects that you want to replicate exist in the source database.
- If a table will be partitioned, create those partitions before you activate a configuration to begin replication processing. Partitioning a table while it is actively replicating causes SharePlex to lose the identifying information it has compiled, and DML from that table partition will not be replicated. You can add a partition to a table already in replication, but you will need to reactivate the configuration to update that table in the SharePlex object cache.
Prerequisites
Make certain you satisfy the following prerequisites before you activate a configuration.
Before you activate a configuration in production, perform a test activation by using the verify config command. If there are syntax errors, misspellings or duplicate entries in the configuration file, the entire activation will fail.
This command will test the configuration to find and report the following conditions:
- Verify the syntax of the entries in the configuration file.
- Report an error if the source object is not supported for replication by SharePlex.
- Report if a host name specified in a route is unreachable.
- Report if there are duplicate specifications for a single object.
- Report if an object specification will be skipped and the reason why.
The verify config command does not verify how long the activation will take, nor will it verify the target objects or database connection (as represented by the database identifier listed in the routing map.)
For more information, see the verify config command in the SharePlex Reference Guide.