Microsoft distributes Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) or Microsoft SQL Server 2012 fixes in one downloadable file. Because the fixes are cumulative, each new release contains all the hotfixes and all the security updates that were included with the previous SQL Server 2008 R2 Service Pack 1 (SP1) or Microsoft SQL Server 2012 update release.
Symptoms
Consider the following scenario:
-
You have a publication of a merge replication in Microsoft SQL Server 2008 R2 or in Microsoft SQL Server 2012.
-
You have one of the following types of subscriptions
-
SQL Server Compact Edition subscription
-
SQL Server subscriber
-
-
The subscriber subscribes to an existing partition that is created on the publisher.
-
You make some changes to the data on the partition on the publisher.
-
The subscription is initialized with an existing snapshot.
In this scenario, changes are not synchronized to the subscription. Note This issue is more likely to occur if many publications are created on one database and if many generations are created.
Cause
This issue occurs because the PartitionId is set incorrectly when the generations are enumerated if the number of generations is larger than the value of the MergeSynchronizationAgent.DownloadGenerationsPerBatch property.
Resolution
Cumulative update information
SQL Server 2012
The fix for this issue was first released in Cumulative Update 1 for SQL Server 2012. For more information about this cumulative update package, click the following article number to view the article in the Microsoft Knowledge Base:
2679368 Cumulative update package 1 for SQL Server 2012Note Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2012 fix release. Microsoft recommends that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
2692828 The SQL Server 2012 builds that were released after SQL Server 2012 was released You must apply a SQL Server 2012 hotfix to an installation of SQL Server 2012.
Cumulative update package 4 for SQL Server 2008 R2 SP1
The fix for this issue was first released in Cumulative Update 4. For more information about how to obtain this cumulative update package for SQL Server 2008 R2 SP1, click the following article number to view the article in the Microsoft Knowledge Base:
2633146 Cumulative update package 4 for SQL Server 2008 R2 SP1Note Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2008 R2 SP1 fix release. We recommend that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
2567616 The SQL Server 2008 R2 builds that were released after SQL Server 2008 R2 SP1 was released
Workaround
To work around this issue, use one of following methods:
-
Create a new snapshot and initialize the subscription.
-
Set the value of the MergeSynchronizationAgent.DownloadGenerationsPerBatch property to be larger than the number of generations.
Status
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.