Belirtiler
Publisher 'ın Microsoft SQL Server 2012 veya SQL Server 2012 Service Pack 1 (SP1) üzerinde çalıştığı birleştirme çoğaltması kullandığınızı varsayalım. Yayımcıyı SQL Server 2012 Service Pack 2 ' ye (SP2) yükselttikten sonra, Birleştirme Aracısı 'nı yeniden başlatmazsanız. Ayrıca, aşağıdaki hatayı alırsınız:
Birleştirme işlemi, ' MergePub ' veritabanında bekletme tabanlı meta veri temizleme işlemi yapamadı. Bu hata devam ederse, bu işlem için sorgu zaman aşımını artırmayı deneyin veya bekletme süresini azaltmayı deneyin. Sorun giderirken, eşitleme geçmişini kullanarak eşitlemeyi yeniden başlatın ve yazılacak bir çıktı dosyası belirtin.
Publisher 'da sp_mergemetadataretentioncleanup saklı yordamını el ile yürüttüğünüzde, saklı yordam başarısız olur ve aşağıdaki hatayı alırsınız:
İleti 206, düzey 16, durum 2, yordam sp_mergemetadataretentioncleanup, Line 63Operand tür Clash: bigint, Uniqueıdentifiermsg 206, Level 16, State 2, Procedure sp_mergemetadataretentioncleanup, Line 65Operand tür Clash: int ile uyumsuz
Çözüm
Sorun ilk olarak SQL Server 'ın aşağıdaki toplu güncelleştirmesinde giderilmiştir.
SQL Server 2012 SP2 için toplu güncelleştirme 3 /en-us/help/3002049
Her bir SQL Server toplu güncelleştirmesi, önceki toplu güncelleştirmeyle birlikte gelen tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir. En son SQL Server güncelleştirmelerini gözden geçirin:
Geçici Çözüm
Bu soruna geçici bir çözüm için, yayımlanan veritabanında aşağıdaki sorguyu yürütün: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
Durum
Microsoft bu sorunun "Uygulandığı öğe" bölümünde listelenen Microsoft ürünlerinde bulunduğunu onaylamıştır.