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

Applies to: SQL Server 2012 DeveloperSQL Server 2012 EnterpriseSQL Server 2012 Standard


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>).


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