Problembeschreibung
Wenn Sie entweder eine neue Instanz von Microsoft SQL Server 2016 (oder 2017) oder eine Instanz von SQL Server 2016 (oder 2017) verwenden, die von einer früheren Version von SQL Server aktualisiert wurde, treten aufgrund einer hohen CPU-Auslastung Leistungsprobleme auf. Wenn Sie die sys.dm_os_spinlock_stats Tabelle abfragen, stellen Sie außerdem einen hohen Wert in der Drehspalte für die Zeilen SECURITY_CACHE (Sicherheitscache) und CMED_HASH_SET (Metadatencache) fest (im Vergleich zu anderen Zeilen in der Tabelle). Sie sehen beispielsweise die folgenden Werte.
Ursache
Dieses Problem tritt aufgrund eines hohen Spin-Lock-Streits in einem stark gleichzeitigen System auf. In diesen Betriebssystemen konkurrieren mehrere CPU-Threads um Ressourcen und drehen sich um ein längeres Intervall, während sie in regelmäßigen Abständen in einer Schleife ausgeführt werden, um zu bestimmen, ob die Ressource verfügbar ist, anstatt sofort zu liefern. Wenn sich mehrere CPU-Threads (in einer While-Schleife ) für eine Ressource drehen, anstatt sie zu erzeugen, führt dies zu hohen CPU-Auslastungs- und Leistungsproblemen.
Lösung
Dieses Problem wurde in den folgenden kumulativen Updates für SQL Server behoben:
Hinweis Nachdem Sie SQL Server kumulatives Update 2 (CU2) für 2016 angewendet haben, werden die Namen der SECURITY_CACHE und CMED_HASH_SET in LOCK_RW_SECURITY_CACHE bzw. LOCK_RW_CMED_HASH_SET geändert. Nachdem CU2 angewendet wurde, werden die Werte wie folgt angezeigt.
Jedes neue kumulative Update für SQL Server enthält alle Hotfixes und alle Sicherheitsfixes, die im vorherigen kumulativen Update enthalten waren. Sehen Sie sich die neuesten kumulativen Updates für SQL Server an:
Status
Microsoft hat bestätigt, dass es sich hierbei um ein Problem bei den in diesem Artikel genannten Microsoft-Produkten handelt.
Informationsquellen
Erfahren Sie mehr über die Terminologie , die Microsoft verwendet, um Softwareupdates zu beschreiben.
Im Whitepaper Diagnosing and Resolveing Spinlock Contention on SQL Server werden Probleme und Lösungen im Zusammenhang mit Spinlockkonflikten ausführlich behandelt.