I have merge replication with some filters. There is however one article that is used in 2 different filters so
sp_helpmergefilter for this article is returning 2 rows.
Now I want to remove both of these filters but I cannot do that without error:
Neither using sp_dropmergefilter neither using replication properties window.
In both cases when I run stored procedure or press Mark for reinitialization in GUI I have following error:
Msg 512, Level 16, State 1, Procedure sp_dropmergefilter, Line 167 Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression. Msg 3701, Level 11, State 5, Line 1 Cannot drop the procedure '[MSmerge_expand_29]', because it does not exist or you do not have permission.
The errors from GUI looks even uglier than from stored procedure.
I know the error is related to following peace of source code:
--drop expand proc and nullify the expand_proc column in sysmergepartitioninfo
select @procname = expand_proc
and artid = ( select art.artid from dbo.sysmergearticles art, dbo.sysmergesubsetfilters filter
where art.name = filter.join_articlename and filter.pubid=@pubid and filter.artid=@artid)
However even if unhandled error is run it looks like sp is doing its job and that filter is removed and data is transferred properly. But in my opinion this bug should be fixed.
I am trying to involve someone more familiar with this topic for a further look at this issue. Sometime delay might be expected from the job transferring. Your patience is greatly appreciated.
Thank you for your understanding and support.
If you have any feedback on our support, please clickhere.
Thank you for reporting this issue. This is known issue that already listed in our internal database.
In the future, if you found any other issues that you believe that its a bug, please feel free to report directly using this site:
Microsoft Online Community Support
Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread.
Microsoft führt eine Onlineumfrage durch, um Ihre Meinung zur Technet Website zu erfahren. Wenn Sie sich zur Teilnahme entscheiden, wird Ihnen die Onlineumfrage angezeigt, sobald Sie die Technet Website verlassen.