Симптоми
Предположите, че използвате обединяване на репликация, което се изпълнява в Publisher на Microsoft SQL Server 2012 или SQL Server 2012 Service Pack 1 (SP1). След като надстроите Publisher до SQL Server 2012 Service Pack 2 (SP2), не можете да рестартирате циркулярния агент. Освен това получавате следното съобщение за грешка:
Процесът на обединяване не можа да извърши почистване, базирано на съхранение, в база данни "MergePub". Ако тази неизправност продължи, опитайте да увеличите времето на изчакване на заявката за този процес или опитайте да намалите периода на съхранение. При отстраняване на неизправности рестартирайте синхронизацията с многословното регистриране на хронологията и задайте изходния файл, към който да се пише.
Когато изпълнявате ръчно sp_mergemetadataretentioncleanup съхранената процедура в Publisher, съхранената процедура е неуспешна и получавате следната грешка:
MSG 206, ниво 16, щат 2, процедура sp_mergemetadataretentioncleanup, Line 63Operand тип сблъсък: bigint е несъвместим с uniqueidentifierMsg 206, ниво 16, щат 2, процедура sp_mergemetadataretentioncleanup, Line 65Operand Type сблъсък: INT е несъвместим с uniqueidentifier
Решение
Проблемът е коригиран първо в следващата сборна актуализация на SQL Server.
Кумулативна актуализация 3 за SQL Server 2012 SP2 /en-us/help/3002049
Всяка нова сборна актуализация за SQL Server съдържа всички поправки и всички корекции на защитата, които са били включени в предишната сборна актуализация. Вижте последните сборни актуализации за SQL Server:
Заобиколно решение
За да заобиколите този проблем, изпълнете следната заявка в публикуваната база данни:if exists (select * from sys.columns sc inner join sys.types st on sc.system_type_id = st.system_type_id where object_id = object_id('dbo.sysmergesubscriptions') and sc.name = 'last_local_recgen' and st.name = 'uniqueidentifier') begin alter table dbo.sysmergesubscriptions drop column last_local_recgen alter table dbo.sysmergesubscriptions add last_local_recgen bigint null end
Състоянието
Microsoft потвърди, че това е проблем в продуктите на Microsoft, които са посочени в секцията "важи за".