Symptomen
Indirecte controlepunten zijn standaard ingeschakeld voor de tempdb-database in Microsoft SQL Server 2016 en 2017. Onder omstandigheden met een zware werkbelasting kan er een fout 'Niet-opleverende scheduler' optreden en de sys.dm_os_spinlock_stats DMV toont verhoogde spinlockconflicten voor het DP_LIST spinlocktype.
Oplossing
Deze oplossing is opgenomen in de volgende updates en servicepack:
-
Cumulatieve update 5 voor SQL Server 2016 Service Pack 1
-
Cumulatieve update 8 voor SQL Server 2016
Informatie over servicepacks voor SQL Server 2016
Over SQL Server builds
Elke nieuwe build voor SQL Server bevat alle hotfixes en beveiligingspatches uit de vorige build. U wordt aangeraden de meest recente cumulatieve updates voor SQL Server te installeren:
Servicepacks zijn cumulatief. Elk nieuw servicepack bevat alle correcties uit eerdere servicepacks, samen met eventuele nieuwe oplossingen. We raden u aan het meest recente servicepack en de meest recente cumulatieve update voor dat servicepack toe te passen. U hoeft geen eerder servicepack te installeren voordat u het meest recente servicepack installeert. Gebruik tabel 1 in het volgende artikel voor meer informatie over het nieuwste servicepack en de meest recente cumulatieve update.
Het versie-, editie- en updateniveau van SQL Server en de bijbehorende onderdelen bepalen
Tijdelijke oplossing
U kunt dit probleem omzeilen door indirecte controlepunten voor de tempdb-database uit te schakelen met behulp van een van de volgende DDL-instructies (Data Definition Language).
Dit moet als volgt gebeuren:
-
Voer op de modeldb-database (hiermee wordt ook de standaardwaarde voor nieuwe databases) de volgende instructie uit:ALTER DATABASE [model] SET TARGET_RECOVERY_TIME = 0 MINUTES
-
Of rechtstreeks in de tempdb-database telkens wanneer het exemplaar wordt gestart met behulp van de SQL Server Agent met behulp van de volgende instructie:ALTER DATABASE [tempdb] SET TARGET_RECOVERY_TIME = 0 MINUTES
-
U kunt ook periodiek handmatige controlepunten uitgeven voor de tempdb-database met behulp van de volgende instructie:use tempdbgo checkpointgo
Bovendien kan TF 3468 worden gebruikt om indirect controlepunt op tempdb uit te schakelen.
Status
Microsoft heeft bevestigd dat dit probleem zich kan voordoen in de Microsoft-producten die worden vermeld in de sectie Van toepassing op.
Verwijzingen
Meer informatie over de terminologie die Microsoft gebruikt om software-updates te beschrijven. Zie de volgende artikelen voor meer informatie: