Ressourcenmonitor gibt eine Bedingung kein Ergebnis auf einem Server mit SQL Server

Gilt für: Microsoft SQL Server

Problembeschreibung


Auf einem Server mit Microsoft SQL Server 2008 (oder höher), protokolliert der Ressourcenmonitor Task die folgende Meldung alle 5 Sekunden:
Datum und Uhrzeit Server mit "dbghelp.dll" Version "4.0.5"Datum und Uhrzeit Server ** Dump Thread - Spid = 0 PSS = 0x0000000000000000 EG = 0 X 0000000000000000Datum und Uhrzeit Anmeldung für den Benutzer 'OPENTEXT\sqlcrmusr' war erfolgreich. Verbindung: vertraut. [CLIENT: IP-Adresse]Datum und Uhrzeit spid78 Fehler: 4014, Schweregrad: 20, State: 2.Datum und Uhrzeit Fehler spid78 ein schwerwiegender beim Lesen des Eingabedatenstroms vom Netzwerk. Die Sitzung wird beendet.Datum und Uhrzeit Server *** Stack Dump an Laufwerk: \MSSQL2005\LOG\SQLDump#.txtDatum und Uhrzeit Server * ***Datum und Uhrzeit Server *Datum und Uhrzeit Server * STAPELDUMPS beginnen:Datum und Uhrzeit Server * Datum und Uhrzeit Spid 0Datum und Uhrzeit Server *Datum und Uhrzeit Server * kein Ergebnis RessourcenmonitorDatum und Uhrzeit Server *Datum und Uhrzeit Server * ***Datum und Uhrzeit Server *--Datum und Uhrzeit Server * kurze Stack DumpDatum und Uhrzeit Server ist-Stack für das Speicherabbild 0x000000000000005CDatum und UhrzeitServer unbekannt, Ressourcen-Monitor (0x9b0) Arbeitskraft 0x0000000003A2C1C0 scheint auf Node_-kein Ergebnis. Speicher freigegeben: 0 KB. Ca. CPU verwendet: Kernel 0 Msnull 0 Benutzer Msnull Intervall: Interval_value.

Ursache


Ab SQL Server 2008 Ressourcenmonitor Aufgabe wird regelmäßig aktiviert und benachrichtigen Abonnenten niedrig, hoch oder stetig Speicherereignisse. Diese Speicherereignisse möglicherweise externe SQL Server (Benachrichtigungen, die systemweite vom Betriebssystem) oder interne SQL Server (Prozess sind Benachrichtigungen aus dem Pufferpool). Wenn solche Benachrichtigungen Trimmen verschiedene Speicher-Consumer die Speicherverwendung.Hinweis Verbraucher können Speicher Clerks sein Cachespeicher Benutzerspeicher oder Objekt speichert.Wenn Verbrauchern Arbeitsspeicher viel Speicher verwenden, dauert verkürzen, die der Consumer lange abgeschlossen.Scheduler Monitor-Aufgabe, die jeder 5seconds wird überprüft, ob Ressourcenmonitor zwischen einem Verbraucher in den letzten 60 Sekunden verschoben wurde. Der Planer erkennt, dass Ressourcenmonitor an Consumer 60 Sekunden lang nicht bewegt wurde, der Zeitplan interpretiert dies als Ressource in einen Zustand nicht Gewinnung und der Zeitplan die Fehlermeldung protokolliert im Abschnitt "Symptome" erwähnte.
HinweisBeginnend mit SQL Server 2019 60-Sekunden-Intervalls auf 120 Sekunden die Häufigkeit dieser Diagnose Benachrichtigungen und die Generierung von Speicherabbilddateien erhöht.Diese Nachrichten werden auch ausgelöst, wenn die Rate, mit der Ressourcenmonitor Speicher freigibt, weniger als 2 MB 5 Sekunden ist.Diese Nachrichten werden lediglich die Angabe der Ressourcenmonitor ist große bereinigen und diese Nachrichten werden nicht notwendigerweise ein Problem mit dem Ressourcenmonitor selbst.

Lösung


Beginnend mit Microsoft SQL Server 2008 Service Pack 2 und Microsoft SQL Server 2008 R2 Service Pack 1 wurde kein Ergebnis Ressourcenmonitor Nachricht erweitert einfach Speicher Sachbearbeiter isolieren, die die Bedingung kein Ergebnis führt.Die neue Nachricht wird folgendermaßen aussehen:
Ressourcen-Monitor (0x9b0) Arbeitskraft 0x0000000003A2C1C0 scheint kein Ergebnis auf Knoten Node_ #. Speicher freigegeben: 0 KB. Zuletzt warten: Lastwaittype. Letzte Schreiber: Clerk_typegeben, name Clerk_name. Ca. CPU verwendet: Kernel 0 ms Benutzer 0 ms Intervall: Interval_value.
Nachfolgend eine Beschreibung der verschiedenen Felder in dieser Nachricht verwendet werden:
  • Speicher freigegeben: Dadurch wird Arbeitsspeicher für das angegebene Intervall als in Kilobyte vom Ressourcenmonitor freigegeben ist. Wenn die Rate, mit der Speicher freigegeben wird, nicht 2 MB 5 Sekunden, erkennt der Planer dies als Bedingung kein Ergebnis.
  • Zuletzt warten: Dies ist der letzte Wait Ressourcenmonitor Threads. Können Sie dieses Feld zusammen mit dem Feld Ca. CPU verwendet um festzustellen, ob der Ressourcenmonitor Thread ausgeführt wird, oder einen beträchtlichen Teil des Intervalls warten.
  • Letzte Clerk: der Typ und Name der Speicher-Geschäftsstelle, die Speicher Zuschneiden war, wenn Zustand kein Ergebnis.
  • Ca. CPU verwendet: Kernel und Mal, mit dem Ressourcenmonitor, gemessen in Millisekunden. Sie können dies mit anderen Feldern Ressourcenmonitor während des angegebenen Zeitintervalls Fortschritt überprüfen.
  • Intervall: Dies ist die Zeit, die seit der letzte Clerk benachrichtigt wurde, gemessen in Millisekunden.
Diese Meldung neben RING_BUFFER_RESOURCE_MONITOR Einträge aus der Zeit der Nachricht können Sie die Ursache Benachrichtigung über unzureichenden Arbeitsspeicher.Weitere Informationen zum Interpretieren der RING_BUFFER_RESOURCE. Besuchen Sie die folgende MSDN-Blog:Weitere Informationen darüber, wie SQL Server überwacht und reagiert Hauptspeicher und über die Aufgabe Ressourcenmonitor und Problembehandlung speicherbezogene Leistungsprobleme in SQL Server finden Sie in MSDN-Blog Artikeln:

Status


Microsoft hat bestätigt, dass es sich um ein Problem bei den Microsoft-Produkten handelt, die im Abschnitt „Eigenschaften“ aufgeführt sind. Dieses Problem wurde in SQL Server 2008 Service Pack 2 für SQL Server erstmals in SQL Server 2008 R2 Service Pack 1 für SQL Server 2008 R2 zuerst 2008.This Problem behoben wurde.