Simptomi
Kada instalirate SQL Server 2014 servisni paket 1 (SP1), SQL Server 2012 SP3 ili SQL Server 2016, dolazi do sporih performansi upita i pune privilegovane (jezgra) upotrebe CPU režima dok se server ponovo ne pokrene. Možda ćete videti i veliku zapreminu PAGELATCH_* čekanja.
Rešenje
Problem je rešen u sledećim kumulativnim ispravkama sistema SQL Server:
Svaka nova kumulativna ispravka za SQL Server sadrži sve hitne ispravke i sve bezbednosne ispravke koje su bile uključene u prethodnu kumulativnu ispravku. Preporučujemo da preuzmete i instalirate najnovije kumulativne ispravke za SQL Server:
Uzrok
SQL Server koristi dinamičku logiku promocije i degradacije rezanja (super/pod-rez). Ovo poboljšava performanse i skalabilnost SQL Servera tako što prati broj nabavljenih na rezi i o tome koliko bi vremena trebalo da bude potrebno da se stekne ista reza ako nije postojala sporna tačka. Zatim se promovišu podobne reze (super-reza) na osnovu ovog modela. Kada postoji mnogo promena (umetanja/ažuriranja/brisanja) na Heap ili BTree (HoBT), reze povezane sa HoBT-om mogu biti promovisane u status super rezanja. Međutim, do degradacije ne dolazi automatski. Više o super/pod-rezanju možete pročitati u ovom članku. Ako se ovi HoBTs kasnije dogovore, oslobođeni HoBT se vraća u globalnu zalihu za ponovnu nušu. Kada se taj HOBT ponovo koristi, on ponovo koristi prethodno promovisanu rezu, čak i kada nema spora na HoBT-u. Ovo dodaje indirektne troškove CPU-a. Ovo ponašanje povećava iskorišćenost CPU režima privilegovanog (jezgra) sql servera dok se server ponovo ne pokrene. Ovo povećanje obično dodaje ne više od nekoliko mikrosekundi sa svakim izvršavanje. Možda ćete videti i veliku zapreminu PAGELATCH_* čekanja zbog ovih proširenih super-reza na HoBTs-u.
Status
Microsoft je potvrdio da je ovo problem u Microsoft proizvodima koji su navedeni u odeljku "Odnosi se na".