Apply does not replicate the changes

When it appears that Dbvisit Replicate does not replicate the changes or when the following message is shown on the console without changing.  If this is the first time that you started APPLY.  Wait a minute or so. 

APPLY is waiting for first redo log switch, initialization NOT yet complete.

The following message may also apear in the Apply log file:

WARN> WARN-3011: No PLOG propagated to apply that match current apply SCNs.
INFO> Start SCN <SCN> is higher than all SCNs so far. Waiting for the first PLOG or PLOG in transit.

 

Please check the following:

1. Run a health check command to see if all the processes can communicate with each other. 

dbvrep> healthcheck 
ERROR: Could not connect to APPLY, it is down or unreachable.
(Connection refused)
Connectivity test for APPLY: FAILED
ERROR: Could not connect to APPLY, it is down or unreachable. (Connection refused)
Connectivity test for MINE: PASSED
2 processes checked.

 

2. Find out which ports are being used and ensure all ports listed above are open on the specific servers. 

dbvrep> show interface
MINE1.MINE_LISTEN_INTERFACE = 0.0.0.0:7903
*.MINE_REMOTE_INTERFACE = localhost:7890
APPLY.APPLY_LISTEN_INTERFACE = 0.0.0.0:7902
APPLY.APPLY_REMOTE_INTERFACE = xxx:7902
MINE.MINE_LISTEN_INTERFACE = 0.0.0.0:7901
APPLY1.APPLY_REMOTE_INTERFACE = xxx:7904
*.APPLY_REMOTE_INTERFACE = localhost:7891
APPLY1.APPLY_LISTEN_INTERFACE = 0.0.0.0:7904
*.FETCHER_REMOTE_INTERFACE = localhost:7889
*.MINE_LISTEN_INTERFACE = localhost:7890
MINE.MINE_REMOTE_INTERFACE = xxx:7901
*.APPLY_LISTEN_INTERFACE = localhost:7891
*.FETCHER_LISTEN_INTERFACE = localhost:7889
MINE1.MINE_REMOTE_INTERFACE = xxx.cr:7903

Please see APPLY (or MINE) cannot connect - connectivity issues for more information.

 

3. Find out the internal tables have been replicated. The Applied records should match the MINE records and show 100%:

dbvrep> list progress all 
Progress of replication d112F: total/this execution
--------------------------------------------------------------------------------------------------------------------------------------------
DBVREP.DBRSOBJ$: 100% Mine:75679/75679 Unrecov:0/0 Applied:75679/75679 Conflicts:0/0 Last:25/06/2016 21:48:37/OK
DBVREP.DBRSUSER$: 100% Mine:103/103 Unrecov:0/0 Applied:103/103 Conflicts:0/0 Last:25/06/2016 11:41:01/OK
--------------------------------------------------------------------------------------------------------------------------------------------

 

4. Are all tables not being replicated or just a subset? If a subset is replicated, please ensure all the tables to be prepared are known to Dbvisit Replicate. Use the "list prepare" to check which tables are known to Dbvisit Replicate.

dbvrep>list prepare

When the APPLY process is not run as the default APPLY, then use the "CHOOSE REPLICATION" command to choose the appropriate process. For example, if the process is called APPLY2, then use "CHOOSE REPLICATION APPLY2"


5. Check that the particular table exists in the Dbvisit Replicate data dictionary table. The following query on the run as the Dbvisit Replicate owner on the target database can be run to verify:

SQL> select name, obj_ from DBRSOBJ$ where obj_ in (select SOURCE_OBJECT_ID from DBRSAPPLY_DICT_TABLES);
NAME                             OBJ_
------------------------------ ----------
DBRSCOL$                       78949
DBRSOBJ$                       78951
DBRSTAB$                       78953
DEPT                           74209
EMP                            74211
BONUS                          74213
SALGRADE                       74214
DBRSUSER$                      78955
DBRSV_$DATABASE                78957

Only the tables listed in this table will be replicated. To replicate other tables use the PREPARE command.