Příznaky

Když použijete kumulativní aktualizaci 26 (CU26) SQL Server 2016 Service Pack 3 (SP3) nebo SQL Server 2017 a spustíte uloženou proceduru čištění sledování změn, sp_flush_commit_table_on_demand nebo sp_flush_CT_internal_table_on_demandnebo pokud se spustí automatické čištění sledování změn, zobrazí se následující chybová zpráva:

Msg 8114, Level 16, State 1, Procedure sp_add_ct_history, Line LineNumber

Error converting data type numeric to int.

V protokolu chyb se můžou zaznamenávat SQL Server chyby:

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.

Když narazíte na tuto chybu, změna sledování automatického čištění nemůže vyčistit položky z boční tabulky nebo tabulky syscommittab.

Příčina

SQL Server 2016 SP3 a SQL Server 2017 CU26 představil novou tabulku dbo. MSchange_tracking_historya novou uloženou proceduru, sys.sp_add_ct_history, zaznamenávat historii čištění sledování změn. Tato tabulka obsahuje sloupec, cleanup_version, který je aktuálně deklarován jako datový typ INT. Uložená sys.sp_add_ct_history procedura má parametr, @cleanup_version, který je také deklarován jako INT. V zaneprázdněném systému, který používá sledování změn, může verze čištění překročit rozsah int v daném intervalu. Po spuštění čištění sledování změn se pak pokusí vložit hodnotu BIGINT do sloupce INT této tabulky. Tím se vygeneruje chyba popsaná v části Příznaky.

Řešení

Tento problém je opravený v následujících kumulativních aktualizacích SQL Server:

Kumulativní aktualizace 27 pro SQL Server 2017

Každá nová kumulativní aktualizace pro SQL Server obsahuje všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozí kumulativní aktualizace. Podívejte se na nejnovější kumulativní aktualizace pro SQL Server:

Nejnovější kumulativní aktualizace pro SQL Server 2017

Informace o opravě hotfix na vyžádání:

Tento problém je opravený v následující opravě hotfix na vyžádání pro SQL Server:

Řešení

Pokud narazíte na tento problém, vrátte se k předchozímu buildu tak, že SQL Server 2016 SP3 nebo SQL Server 2017 CU26. Microsoft tento problém aktivně prošetřuje a v případě, že jsou tyto informace dostupné, aktualizuje tento článek o další informace a další pokyny.

Stav

Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt.

Odkazy

Přečtěte si o terminologii, kterou Microsoft používá k popisu aktualizací softwaru.

Potřebujete další pomoc?

Chcete další možnosti?

Prozkoumejte výhody předplatného, projděte si školicí kurzy, zjistěte, jak zabezpečit své zařízení a mnohem více.

Komunity vám pomohou klást otázky a odpovídat na ně, poskytovat zpětnou vazbu a vyslechnout odborníky s bohatými znalostmi.