FIX: Error 2601 occurs when you add new articles with join filters to existing merge publications

Symptoms

Assume that you use Merge Replication in Microsoft SQL Server 2012 or SQL Server 2014 and add new articles with join filters to existing publications. When existing subscribers start to sync (immediately after you add new articles) and then the sync is interrupted, the subsequent sync may fail with a duplicate key error on dbo.sysmergesubsetfilters until you reinitialize the affected subscribers. The error message resembles the following:

Source: Merge Replication Provider
Number: -2147201001
Message: The merge process was unable to deliver the snapshot to the Subscriber. If using Web synchronization, the merge process may have been unable to create or write to the message file. When troubleshooting, restart the synchronization with verbose history logging and specify an output file to which to write.
Source: Microsoft SQL Server Native Client 11.0
Number: 2601
Message: Cannot insert duplicate key row in object 'dbo.sysmergesubsetfilters' with unique index 'uc2sysmergesubsetfilters'. The duplicate key value is (<key value>, <table name>).

Resolution

The issue was first fixed in the following cumulative update of SQL Server:
Recommendation: Install the latest cumulative update for SQL Server

Status

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

Properties

Article ID: 3051243 - Last Review: Aug 17, 2015 - Revision: 1

Feedback