Because synchronization is implemented using synchronization messages, you can monitor the status of the synchronization process by checking the status of the currently existing messages.
When a message is active, it is always persistent in some state in the system. The message is deleted from the databases only after it has been successfully processed. A message that is hanging in either the master database or a replica database is never completely processed. In most cases, an idle, persistent message means that a synchronization error has occurred.
This diagram illustrates store and forward messaging and shows the points in the process where messaging errors can occur.
There are four error prone areas:
▪Message is being forwarded from replica to master
▪Message is executed in the master
▪Reply message is being received from the master
▪Reply message is being executed in the replica
In all the above-mentioned cases, a failure stops the synchronization. A query of the following message information system tables provides the reason for the failure: