Příznaky
Předpokládejme, že v Microsoft SQL Server 2016 nebo 2017 vytváříte velký počet dočasných tabulek. Určitá aplikační zátěž zneplatní mezipaměť dočasných tabulek. Například, když vytváříte dočasné tabulky a potom vytvoříte příkaz ALTER TABLE nebo CREATE INDEX, který zneplatní mezipaměť dočasných tabulek. V takové situaci se můžete setkat s následujícími problémy:
Dochází ke kolizi DDL (Data Definition Language) v databázi tempdb v katalogu systému sysobjvalues a k velkému počtu relací, které čekají na PAGELATCH_EX, PAGELATCH_SH a PAGELATCH_UP typu čekání.
Tato situace také ovlivňuje pracovní vytížení, když je počet položek vyšší než 4 000. To se ale může lišit v závislosti na úloze. Podívejte se na následující příklad:
SELECT [name], [type], [entries_count], [entries_in_use_count]
FROM sys.dm_os_memory_cache_counters
WHERE [type] = N'CACHESTORE_TEMPTABLES'Jméno Typ entries_count entries_in_use_count Dočasné tabulky & proměnné tabulky CACHESTORE_TEMPTABLES < Počet> < Počet>
Řešení
Tento problém je opravený v následujících kumulativních aktualizacích pro SQL Server:
Kumulativní aktualizace 5 pro SQL Server 2017
Kumulativní aktualizace 8 pro SQL Server 2016 SP1
Informace o kumulativních aktualizacích pro SQL Server:
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
Nejnovější kumulativní aktualizace pro SQL Server 2016
Stav
Společnost Microsoft potvrdila, že se jedná o problém produktů Microsoft, které jsou uvedeny v sekci Platí pro.
Reference
Podívejte se na informace o terminologii, kterou společnost Microsoft používá k popisování aktualizací softwaru.