Sümptomid
Oletagem, et loote või kukutate suurel hulgal ajutisi tabeleid Microsoft SQL Server 2016 või 2017. Teatud rakenduse töökoormus kinnitab ajutiste tabelite vahemälu. Näiteks loote ajutisi tabeleid ja seejärel loote muudatuste tabeli või loote indeksi, mis muudab kehtetuks ajutiste tabelite vahemälu. Selles olukorras võivad ilmneda järgmised probleemid.
-
Andmete määratluse keel (DDL), mis on süsteemi kataloogi tempdb sysobjvalues ja suur arv seansse, mis ootavad PAGELATCH_EX, PAGELATCH_SH ja PAGELATCH_UP oota tippimist.
-
See olukord mõjutab ka töökoormust, kui kirjete arv on suurem kui 4 000. Olenevalt töökoormusest võib see siiski erineda. Vt järgmises näites:
SELECT [name], [type], [entries_count], [entries_in_use_count]
FROM sys.dm_os_memory_cache_counters
WHERE [type] = N'CACHESTORE_TEMPTABLES'
Nimi
tüüp
entries_count
entries_in_use_count
Ajutised tabelid & tabeli muutujad
CACHESTORE_TEMPTABLES
<count>
<count>
Lahendus
See probleem on lahendatud SQL serveri järgmisi kumulatiivseid värskendusi.
Iga uus koondvärskenduses SQL Server sisaldab kõiki käigultparandused ja kõik turvaparandusi, mis kuulusid eelmise koondvärskenduse. Vaadake SQL serveri kumulatiivseid värskendusi.
Olek
Microsoft on kinnitanud, et see probleem esineb jaotises "kehtib järgmiste toodete kohta" loetletud Microsofti toodetes.
Viited
Siit leiate teavet selle kohta, mida Microsoftkasutab tarkvaravärskenduste kirjeldamiseks.