Simptomi
Kada koristite novu instancu sustava Microsoft SQL Server 2016 (ili 2017) ili instancu sustava SQL Server 2016 (ili 2017) koja je nadograđena sa starije verzije sustava SQL Server, naići ćete na probleme s performansama zbog velike potrošnje procesora. Osim toga, ako upit za sys.dm_os_spinlock_stats tablicu, primijetit ćete visoku vrijednost u stupcu za okretne stupce za retke programa SECURITY_CACHE (sigurnosna predmemorija) i CMED_HASH_SET (predmemorija metapodataka) (u usporedbi s drugim recima u tablici). Na primjer, primijetit ćete sljedeće vrijednosti.
Uzrok
Taj se problem pojavljuje zbog sadržaja zaključavanja visokih okretnih gumba u vrlo istodobnom sustavu. U tim operacijskim sustavima, više CPU niti se natječu za resurse i vrti za prošireni interval dok se izvode u petlji povremeno kako bi se utvrdilo je li resurs dostupan umjesto da odmah prinos. Kada više niti CPU-a nastavi vrtjeti (u petlji) za resurs umjesto da rezultira, to uzrokuje visoku potrošnju procesora i probleme s performansama.
Rješenje
Taj je problem riješen u sljedećim kumulativnim ažuriranjima za SQL Server:
Napomena Kada primijenite SQL Server 2016 Kumulativno ažuriranje 2 (CU2), nazivi SECURITY_CACHEi CMED_HASH_SET mijenjaju se u LOCK_RW_SECURITY_CACHEodnosno LOCK_RW_CMED_HASH_SET. Kada primijenite CU2, vrijednosti će se prikazati na sljedeći način.
Svako novo kumulativno ažuriranje za SQL Server sadrži sve hitne popravke i sve sigurnosne popravke koji su obuhvaćeni prethodnim kumulativnim ažuriranjem. Pogledajte najnovija kumulativna ažuriranja za SQL Server:
Status
Microsoft je potvrdio da je to problem u Microsoftovim proizvodima koji su navedeni u odjeljku "Odnosi se na".
Reference
Informirajte se o terminologiji koju Microsoft koristi za opisivanje softverskih ažuriranja.
U bijelom se članku Dijagnosticiranje i rješavanje sukoba spinlocka na SQL Server se problemi i rješenja koja su povezana s detaljnom sporom u okretu.