Problembeschreibung
Es wird davon ausgegangen, dass Sie eine Extended Events-Sitzung oder eine SQL Profiler-Ablaufverfolgung erstellen, die das rpc_starting -oder rpc_completed -Ereignis in Microsoft SQL Server 2016 erfasst, und die Sammlungs Anweisung oder der Datenstrom nicht aktiviert ist ( Sie haben dencollect_statement -oder collect_data_stream -Parameter für die Xevents-Sitzung oder den Parameter TextData oder Binary Data für den SQL Profiler Wenn während der Sitzung die SQL Server-Aktivität "Tabellenwertparameter" (TVPs) erfasst wird, kann die Speicherauslastung von SQL Server viel mehr als erforderlich anwachsen. Dies kann zu einer schweren Verlangsamung führen, und im Extremfall wird der SQL Server-Arbeitsspeicher abgesaugt, und Sie erhalten die folgende Fehler 701-Meldung für den laufenden Betrieb:
Im Ressourcenpool "Standard" ist nicht genügend Systemspeicher vorhanden, um diese Abfrage auszuführen.
Hinweis: Wenn Sie DBCC MEMORYSTATUS oder Query sys.dm_os_memory_clerksverwenden, stellen Sie möglicherweise fest, dass der OBJECTSTORE_LBSS Speicher Clerk einen hohen Speicherverbrauch aufweist.
Fehlerbehebung
Das Problem, bei dem eine Extended Events-Sitzung oder eine Profiler-Ablaufverfolgung, die nicht für das Sammeln von Anweisungen oder Datenströmen konfiguriert ist, weiterhin große Speicherpuffer erfordert, weil das TVP-Material durch diesen Fix behoben wird.
HinweisWenn Ihre Extended Events-Sitzung oder SQL Profiler-Ablaufverfolgung so konfiguriert ist , dass Sie Anweisung oder Daten/binären Datenstrom sammelt, und die betroffene SQL Server-Aktivität TVPs während dieser Sitzung erfasst wird, kann die Speicherauslastung von SQL Server auch mit dem aktuellen Fix weiterhin zunehmen, da in diesem Fall der Speicherverbrauch zur Behandlung des TVP-Streams innerhalb der Ablaufverfolgung erforderlich ist
Daher empfehlen wir, dass Sie keine permanenten Sitzungen oder Ablaufverfolgungen mit den vorher erwähnten Kombinationen von Ereignissen und Datenfeldern in SQL Server-Instanzen ausführen, die auf TVP basierende Aktivitäten mit hoher (in Zahlen oder Größe) erhalten.
Service Pack für SQL Server:
Dieser Fix ist in Service Pack 2 für SQL Server 2016 enthalten.
Hinweis: Wenn Sie ein weiteres Problem beheben möchten, das die Anzahl der nachverfolgten Zeilen in einem TVP begrenzt, lesen Sie die KB 4468102.
Informationen zu SQL Server 2016-Builds
Jeder neue Build für SQL Server 2016 enthält alle Hotfixes und Sicherheitsupdates, die sich im vorherigen Build befanden. Wir empfehlen, den neuesten Build für SQL Server 2016 zuinstallieren.
Status
Microsoft hat bestätigt, dass es sich hierbei um ein Problem bei den in diesem Artikel genannten Microsoft-Produkten handelt.
Informationsquellen
Informieren Sie sich über die Terminologie, die Microsoft zum Beschreiben von Softwareupdates verwendet.