KB4042232 – KORREKTUR: Zugriffsverletzung beim Abbrechen einer ausstehenden Abfrage, wenn das Feature fehlende Indizes in SQL Server

Gilt für
SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2014 Service Pack 2 - duplicate (do not use) SQL Server 2016 Service Pack 1 SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Standard on Windows

Symptome

Nehmen Sie folgendes Szenario an:

  • Sie verfügen über eine gespeicherte Prozedur, die eine temporäre Tabelle in Microsoft SQL Server erstellt.

  • Sie führen eine Abfrage aus, die von der gespeicherten Prozedur ausgibt, und die Abfrage erfüllt die folgenden Bedingungen:

    • Die Abfrage verweist auf die temporäre Tabelle, die von der gespeicherten Prozedur erstellt wird.
    • Die Abfrage verfügt über eine WHERE-Klausel, die nicht von Indizes abgedeckt wird, und das Feature fehlende Indizes ist aktiviert.
  • Angenommen, die gespeicherte Prozedur wird gleichzeitig von mehreren Instanzen aufgerufen. Anschließend werden die temporären Tabellen häufig erstellt und gelöscht, was zu einer häufigen Erstellung und Löschung der entsprechenden Datensätze für die fehlenden Indizes führt.

  • Wenn in diesem Fall eine ausstehende Abfrage der gespeicherten Prozedur abgebrochen wird, erhalten Sie möglicherweise einen Zugriffsfehler.

Lösung

Dieses Problem wurde in den folgenden kumulativen Updates für SQL Server behoben:

Kumulatives Update 2 für SQL Server 2017

Kumulatives Update 9 für SQL Server 2016 RTM

Kumulatives Update 6 für SQL Server 2016 SP1

Kumulatives Update 8 für SQL Server 2014 SP2

Informationen zu kumulativen Updates für SQL Server:

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:

Neuestes kumulative Update für SQL Server 2017

Neuestes kumulatives Update für SQL Server 2016

Neuestes kumulatives Update für SQL Server 2014

Problemumgehung

Die Problemumgehung für dieses Problem besteht darin, das Ablaufverfolgungsflag 2392 zu aktivieren, das die Auflistung fehlender Indizes unterdrückt.

Weitere Informationen

Weitere Informationen zum Feature fehlende Indizes finden Sie unter folgendem Link:

Feature "Fehlende Indizes"

Status

Microsoft hat bestätigt, dass dies ein Problem bei den Microsoft-Produkten ist, die im Abschnitt „Gilt für“ aufgeführt sind.

Referenzmaterial

Informieren Sie sich über die Terminologie, die Microsoft zum Beschreiben von Softwareupdates verwendet.