We are running merge replication over a WAN.
Only changes to the Subscriber are replicated to the Publisher ( -ExchangeType 1 ).
We are using pull subscriptions
When the merge agent is selecting records from the MSmerge_contents on the subscriber to pull data to the publisher, we are getting Table locks on MSmerge_contents.
This in turn blocks writes to the tables because the triggers are blocked. These can last as long as 1500ms and more, negatively affecting the application writing at the subscriber.
I have uploadwritechangesperbatch, uploadwritechangesperbatch and uploadgenerationsperbatch all set to 1000 for increased performance.
Should I reduce the setting of uploadgenerationsperbatch?
All indexes on the meta data tables are rebuilt every night. I also keep the meta data tables trimmed to 14 days of data.
Any ideas as to how I can avoid the table lock is appreciated.