Simptomi
Prema zadanim postavkama, neizravne kontrolne točke uključene su za bazu podataka tempdb u Microsoft SQL Server 2016 i 2017. U uvjetima teškog radnog opterećenja može se pojaviti pogreška "Planer koji ne daje dobit", a sys.dm_os_spinlock_stats DMV prikazuje povećani sadržaj spinlocka za vrstu DP_LIST spinlocka.
Status
Microsoft je potvrdio da je to problem u Microsoftovim proizvodima koji su navedeni u odjeljku "Odnosi se na".
Rješenje
Taj je problem riješen u sljedećim kumulativnim ažuriranjima za SQL Server:
O kumulativnim ažuriranjima za SQL Server:
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:
Zaobilazno rješenje
Da biste zaobišli taj problem, isključite neizravne kontrolne točke u bazi podataka tempdb pomoću jedne od sljedećih naredbi jezika za definiranje podataka (DDL).
To treba učiniti na sljedeći način:
-
U bazi podataka modeldb (time se mijenja i zadana vrijednost za nove baze podataka), pokrenite sljedeću naredbu:ALTER DATABASE [model] SET TARGET_RECOVERY_TIME = 0 MINUTES
-
Ili izravno u bazi podataka tempdb svaki put kada se instanca pokrene pomoću SQL Server Agent sljedećom izjavom: ALTER DATABASE [tempdb] SET TARGET_RECOVERY_TIME = 0 MINUTES
-
Ili povremeno izdajete ručne kontrolne točke u bazi podataka tempdb pomoću sljedeće naredbe:use tempdbgo checkpointgo Osim toga, TF 3468 može se koristiti za onemogućivanje neizravne kontrolne točke na tempdb.
Reference
Informirajte se o terminologiji koju Microsoft koristi za opisivanje softverskih ažuriranja. Dodatne informacije potražite u sljedećim člancima: