Belirtiler
SQL Server 2016 Service Pack 3 (SP3) veya SQL Server 2017 Toplu Güncelleştirme 26'ya (CU26) kaydettikten ve değişiklik izleme temizleme saklı yordamını, sp_flush_commit_table_on_demand veya sp_flush_CT_internal_table_on_demand'içalıştırdıktan sonra, değişiklik izleme otomatik temizleme çalışırsa, aşağıdaki hata iletisini alırsınız:
Msg 8114, Level 16, State 1, Procedure sp_add_ct_history, Line LineNumber
Error converting data type numeric to int.
Buna ek olarak, aşağıdaki hatalar hata günlüğüne SQL Server olabilir:
DateTime spidNum Error: 22122, Severity: 16, State: 1.
DateTime spidNum Change Tracking autocleanup failed on side table of "table_name". If the failure persists, use sp_flush_CT_internal_table_on_demand to clean up expired records from its side table.
Bu hatayla karşılaştıktan sonra, otomatik temizlemeyi izleme özelliği yan tablodaki veya syscommittab tablosundan girişleri temizleyemiyor.
Neden
SQL Server 2016 SP3 ve SQL Server 2017 CU26, yeni bir tablo, dbo'ya tanıtmaya başladı. MSchange_tracking_historyizleme temizleme işleminin geçmişini kaydetmek için sys.sp_add_ct_historybir yordam olan 'a ve yeni bir saklı yordama tıklayın. Bu tablonun, şu cleanup_versionINT veri türü olarak bildirilen bir sütunu vardır. En sys.sp_add_ct_history yordamının BIR parametresi vardır @cleanup_versionve bu parametre INT olarak da bildirildi. Değişiklik izlemenin kullandığı yoğun bir sistemde, temizleme sürümü verilen bir aralıkta bir TAMSAYI aralığına çapraz geçiş yapabilir. Ardından, değişiklik izleme temizleme işlemi çalıştırıldı mı, bu tablonun TAMSAYI sütununa BIGINT değeri eklemeye çalışır. Bu, "Belirtiler" bölümünde açıklanan hatayı üretir.
Çözüm
Bu sorun, aşağıdaki yazılım güncelleştirmeleri ile SQL Server:
SQL Server 2017 Toplu 27 Güncelleştirmesi
Her yeni toplu güncelleştirme SQL Server, önceki toplu güncelleştirmeyle birlikte gelen tüm düzeltmeleri ve güvenlik düzeltmelerini içerir. Yeni sürümler için en son toplu güncelleştirmeleri SQL Server:
Isteğe bağlı düzeltme bilgileri:
Bu sorun, aşağıdaki isteğe bağlı düzeltmede düzeltilmiştir SQL Server:
Geçici Çözüm
Bu sorunla karşılaşırsanız, 2016 SP3 veya SQL Server 2017 CU26 sürümünü kaldırarak önceki SQL Server sürümüne geri dön. Microsoft bu sorunu etkin bir şekilde araştırıyor ve bu bilgiler kullanılabilir olduğunda daha fazla bilgi ve ek kılavuz ile bu makaleyi güncelleştirecek.
Durum
Microsoft bu sorunun "Uygulandığı öğe" bölümünde listelenen Microsoft ürünlerinde bulunduğunu onaylamıştır.
Başvurular
Microsoft'un yazılım güncelleştirmelerini açıklamak için kullandığı terminoloji hakkında bilgi alın.