Problems with changed or missing replication definitions

If the value of the use_rssd configuration parameter is true, Replication Agent connects to the RSSD of the primary Replication Server to retrieve replication definitions for the primary database whenever the resume command is invoked. Each time it retrieves replication definitions, Replication Agent stores that information in a cache. Replication Agent uses the replication definitions stored in its cache when generating LTL to send to the primary Replication Server.

NoteIn this section, the term replication definition refers to both table replication definitions and function replication definitions.

If the Log Transfer Interface (LTI) component encounters an operation for a database object that it does not have cached information for, Replication Agent reconnects to the RSSD to update its replication definition cache. If a replication definition still cannot be found for the operation, the Replication Agent instance suspends operation and goes to the Admin state.

If you drop a replication definition after Replication Agent has cached the RSSD information, one of two problems may occur:

The more difficult problem is the second one, because there is no failure indication other than replication not taking place as expected. In that case, neither Replication Server nor Replication Agent are aware of the problem, and hence, neither will log it as an error.

To avoid this problem, you should quiesce the Replication Agent instance, change the replication definition, then resume the Replication Agent instance so the Replication Agent has the correct version of the replication definition in its cache.