问题描述
I am using the Microsoft Sync Framework to synchronize a table on two Microsoft SQL Servers. I have created a test application which generates one row per second in the table on the remote server. The application making use of the Sync Framework runs on the local server. The test application created about 52000 entries in the database over one night. The syncing application executed a call to the SyncOrchestrator.Synchronize Method every 15 seconds. When I checked the outcome of the synchronization application by executing a count statement on the synchronized table and the remote table, the result was that 295 rows were missing in the synchronized table. I used the tablediff Utility to determine the Ids of the missing rows and then queried the tracking table with those ids. On the remote database, there is an entry for every single missing id in the tracking table whereas on the local database the ids of the missing rows are nowhere to be found in the tracking table. When I restart the synchronization application, the missing entries don't get updated either. I thought the Sync Framework took care of these inconsistencies automatically but unfortunately I seem to be wrong.
Is there any built-in method I can use to verify that the synchronization process has taken place successfully? Is there another way of verifying data consistency?
there's an issue with change enumeration when DMLs and synchronization are running concurrently. have a look at this hotfix if it helps.
这篇关于如何确保使用 Microsoft Sync Framework 同步成功?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!