Nonatomic Materialization Problems

Fix nonatomic materialization problems based on the status returned by check subscription.

Nonatomic Matarialization Problems

Status at Replicate Replication Server

Status at Primary Replication Server

Subscription State

Suggested Actions

Defined/ Pending

Invalid

The replicate Replication Server is waiting for other subscriptions for the same replication definition and replicate database to be created or dropped.

Look for other subscriptions being created or dropped for the same replication definition and replicate database.

If there are no other subscriptions, wait for five minutes.

Defined/ Recovering

Invalid

The replicate Replication Server cannot connect to the primary Replication Server to define the subscription.

Check the replicate Replication Server error log for messages.

Make sure the user creating the subscription has the same login name and password at the primary Replication Server and the replicate Replication Server. The user should have at least primary subscribe permission on the primary Replication Server.

Defined

Defined

The replicate Replication Server is building the materialization queue.

The primary Replication Server is waiting for the activation request.

Verify that the materialization queue is being built.

Verify that the primary Replication Server is up and that the Stable Queue Manager (SQM), Stable Queue Transaction (SQT), and Distributor (DIST) threads for the primary database are running.

Defined/ Recovering

Defined

The replicate Replication Server cannot build the materialization queue or cannot send the activation request to the primary Replication Server.

Verify that the primary data server is running.

Make sure the user creating the subscription has the same login name and password at the primary data server, select permission on the primary table, and execute permission for rs_marker.

Investigate whether the replicate Replication Server is out of stable queue segments.

Verify that the primary Replication Server is running and that the SQM, SQT, and DIST threads for the primary database are running.

Investigate whether the primary Replication Server is out of segments.

Defined

Active

The replicate Replication Server is building the materialization queue.

The primary Replication Server has received the activation request and sent it to the replicate Replication Server.

Verify that the materialization queue is being built.

Verify that the connection between the primary and replicate Replication Server is up.

Verify that the Data Server Interface (DSI) thread for the replicate database is running.

Qcomplete

Defined

Waiting for the activation request to be processed by the distributor at the primary Replication Server.

Investigate whether the primary Replication Server is out of stable queue segments.

Verify that the primary Replication Server is up and the SQM, SQT, and DIST threads for the primary database are running.

Qcomplete/ Recovering

Defined

The replicate Replication Server was recycled.

Waiting for the activation request to be processed by the distributor at the primary Replication Server.

Wait. The state at the replicate Replication Server should soon change to Qcomplete.

Qcomplete

Active

The primary Replication Server received and processed the activation request. Now, this Replication Server is waiting for the validation request.

The replicate Replication Server is waiting for the activation request.

Check the route from the primary Replication Server to the replicate Replication Server.

Verify that the DSI thread for the replicate database is running.

Investigate whether the replicate Replication Server has run out of queue segments.

Qcomplete

Valid

The subscription is done at primary Replication Server.

The replicate Replication Server is waiting for the activation request.

Check the route between the primary Replication Server and the replicate Replication Server.

Check the DSI to the replicate database.

Investigate whether the replicate Replication Server has run out of queue segments.

Active and not Qcomplete

Active

The replicate Replication Server is applying and building the materialization queue at same time.

The primary Replication Server is waiting for the validation request. This request is not sent until the queue is complete at the replicate Replication Server.

Verify that the DSI thread is processing the materialization queue.

Investigate whether the replicate Replication Server is out of stable queue segments.

Use admin who, sqm to monitor the materialization queue activity.

Qcomplete and Active

Active

The primary Replication Server is waiting for the validation request.

The replicate Replication Server is applying the materialization queue.

Verify that the DSI is processing the materialization queue.

Use admin who, sqm to monitor the materialization queue activity.

Verify that the primary data server, the RepAgent for the primary database and the RepAgent User thread in the primary Replication Server are running.

Verify that the primary Replication Server is running and that the SQM, SQT, and DIST threads for the primary database are running.

Investigate whether the primary Replication Server is out of segments.

Qcomplete and Active

Valid

The primary Replication Server received the validation request.

The replicate Replication Server is applying the materialization queue.

Verify that the DSI thread is processing the materialization queue.

Use admin who, sqm to monitor the materialization queue activity.

Check the route between the primary Replication Server and the replicate Replication Server.

Materialized

Active

The primary Replication Server is waiting for the validation request.

The replicate Replication Server has finished applying the materialization queue.

Investigate whether the primary Replication Server is out of segments.

Verify that the primary data server, the RepAgent for the primary database, and the RepAgent User thread at the primary Replication Server are running.

Verify that the SQM, SQT, and DIST threads for the primary database are running.

Materialized

Valid

The primary Replication Server received the validation request.

The replicate Replication Server has finished applying the materialization queue.

Check the route between the primary Replication Server and the replicate Replication Server.

Verify that the DSI for the replicate database is running.

Investigate whether the replicate Replication Server has run out of stable queue segments.

Valid

Valid

Complete.

None.