cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
475
Views
0
Helpful
2
Replies

UCCE 12.6 -Function Replication is Paused

Our UCCE has stopped replicating data from AWDB to to B, no change has been made, the Database, Server, files, etc has enough space, we have noticed that when restarting the Distributor it inserts a fraction of the data in the Database, but after a few seconds it stops replicating and shows these messages for all tables:

 

Thread [16532] Function Replication is Paused by LogWatch in CheckForFunctionPause

Total log pages allocated 393215, log pages used 171016
20:51:34:966 dis-rpl Trace: Log Watch found that SQL Server log was %43 full
20:51:34:966 dis-rpl Trace: Log Watch will pause some functions and dump the SQL Server Transation Log
20:51:34:966 dis-rpl Trace: Functions Paused
20:51:34:966 dis-rpl Trace: Waiting 120 seconds before Dumping the Log
20:51:35:977 dis-rpl Trace: DbBind::DbBind: Column name = DateTime, Var Length passed to dbbind = 100
20:51:35:977 dis-rpl Trace: DbBind::DbBind: Column name = StartTime, Var Length passed to dbbind = 100
20:51:35:977 dis-rpl Trace: DbBind::DbBind: Column name = EndTime, Var Length passed to dbbind = 100
20:51:35:977 dis-rpl Trace: IcmOdbc::CDbProcess::SQLExecDirect sr = 0 select * from Recovery where RecoveryKey = (select min (RecoveryKey) from Recovery where TableName = 'Agent_Logout' and FromRecoveryKey IS NULL and Type != 'UnReplicated' and Type != 'UnableToRecover')
20:51:36:586 dis-rpl Trace: Completed Scan For Replication Requests for Dialer_Detail

 

Process::SQLExecDirect sr = 0 select * from Recovery where RecoveryKey = (select min (RecoveryKey) from Recovery where TableName = 'Agent_Skill_Group_Interval' and FromRecoveryKey IS NULL and Type != 'UnReplicated' and Type != 'UnableToRecover')
20:51:40:001 dis-rpl Trace: DbBind::DbBind: Column name = DateTime, Var Length passed to dbbind = 100
20:51:40:001 dis-rpl Trace: DbBind::DbBind: Column name = StartTime, Var Length passed to dbbind = 100
20:51:40:001 dis-rpl Trace: DbBind::DbBind: Column name = EndTime, Var Length passed to dbbind = 100
20:51:40:001 dis-rpl Trace: IcmOdbc::CDbProcess::SQLExecDirect sr = 0 select * from Recovery where RecoveryKey = (select min (RecoveryKey) from Recovery where TableName = 'Agent_Skill_Group_Logout' and FromRecoveryKey IS NULL and Type != 'UnReplicated' and Type != 'UnableToRecover')
20:51:41:089 dis-rpl Trace: IcmOdbc::CDbProcess::SQLExecDirect sr = 0 dbcc showfilestats

 

Hope someone can help us on this.

Thanks in advance.

 

 

2 Replies 2

Hi Franscisco,

The same problem, I also faced.

To fix this, you can compare the database property in ICMDBA. You must compare the log buffer size at both side. Might be Side-B, expansion will help you on this.

Please rate if this is helpful.

piyush aghera
Spotlight
Spotlight

It seems like Recovery keys are not matching on the DB of two sides. Distributor service uses recovery key to keep track of changes. As you said, your B side has stopped replicating and when you restart distributor, it replicates for sometime and then stops again.. this seems like a typical case of side B having different Recovery keys from side A.

There can be two fixes:

1. compare recovery key from both sides and find out which tables are lagging.. delete those recovery keys from B side tables, and restart distributor service. Hopefully you will find all missing recovery keys and hopefully both sides will sync and you have all data without any gap.

2. restore DB from side A to side B. this is the easiest fix and will make sure all your data is matching on both sides.

If you're not comfortable with these, then I would suggest to open TAC case, they will find out missing recovery keys and give you commands to recover data or give you steps to restore DB from A to B.