Große Abfragekompilierung wartet SQL Server 2014 RESOURCE_SEMAPHORE_QUERY_COMPILE

Gilt für: SQL Server 2014 Business IntelligenceSQL Server 2014 Business IntelligenceSQL Server 2014 Developer Mehr

Problembeschreibung



Wenn Sie versuchen, mehrere große Abfragen in Microsoft SQL Server 2014 gleichzeitig ausführen, können RESOURCE_SEMAPHORE_QUERY_COMPILEeinige Abfragen warten. Nur eine Abfrage, die zum Kompilieren mehr Arbeitsspeicher als große Gateway-Schwellenwert benötigt (wie durch die Ausgabe des Befehls DBCC MEMORYSTATUS ) kann fortfahren, auch wenn der Server über ausreichend Arbeitsspeicher verfügt.

Hinweis Dies ist das erwartete Verhalten. In großen Batch Systeme wie ein Datawarehouse heruntergestuft dies jedoch Leistung bei gleichzeitiger Ausführung von vielen Abfragen.

Problemlösung


Kumulative Update-Informationen

Das Problem wurde erstmals in folgenden kumulativen Update von SQL Server behoben.

Dieser Hotfix stellt eine neue Spur -T 6498 kennzeichnen. Dieses Ablaufverfolgungsflags kann mehrere große Abfragekompilierung Zugriff auf große Gateway wenn ausreichend Arbeitsspeicher verfügbar ist. Basiert auf 80 Prozent der Zielspeicher für SQL Server und ermöglicht eine umfangreiche Abfragekompilierung pro 25 Gigabyte (GB) Arbeitsspeicher. Sie können beispielsweise für zwei große Abfrage Kompilierungen auf dem Zielspeicher 64 GB.

Nach Installation dieses Hotfixes müssen Sie Trace aktivieren flag -T 6498 um das neue Verhalten zu aktivieren.

Hinweis Wenn Sie Ablaufverfolgungsflags mit DBCC TRACEON -Befehl aktivieren, müssen Sie keinen Neustart des Servers wirksam Ablaufverfolgungsflags zu. Aber es dauert 10 Sekunden für die neue große Gatewaykonfiguration anwenden.

Ein unterstützter Hotfix ist von Microsoft erhältlich. Dieser Hotfix soll nur der Behebung des Problems dienen, das in diesem Artikel beschrieben wird. Verwenden Sie diesen Hotfix nur auf Systemen, bei denen dieses spezielle Problem auftritt.

Wenn der Hotfix zum Download zur Verfügung steht, gibt es einen Abschnitt "Hotfix download available" ("Hotfixdownload verfügbar") im oberen Bereich dieses Knowledge Base-Artikels. Wenn dieser Abschnitt nicht angezeigt wird, senden Sie eine Anforderung an Microsoft Customer Service and Support, um den Hotfix zu erhalten.

Hinweis Falls weitere Probleme auftreten oder andere Schritte zur Problembehandlung erforderlich sind, müssen Sie möglicherweise eine separate Serviceanfrage erstellen. Die normalen Supportkosten gelten für zusätzliche Supportfragen und Probleme, die nicht diesem speziellen Hotfix zugeordnet werden können. Für eine vollständige Liste der Telefonnummern von Microsoft Customer Service and Support oder für Erstellung eine separate Serviceanfrage, fahren Sie auf der folgenden Microsoft-Website fort:Hinweis Das Formular "Hotfix Download Available" zeigt die Sprachen an, für die der Hotfix verfügbar ist. Wenn Ihre Sprache nicht angezeigt wird, ist dieser Hotfix für Ihre Sprache nicht verfügbar.

Weitere Informationen


Ursache

SQL Server verwendet Compile Gateways Schubkontrolle Kompilierungen. Die Gateway-Architektur kann SQL Server Speicherverwendung für die Kompilierung der eingehenden Anfragen unter Kontrolle zu halten. Es gibt drei Gateways: klein, Mittel und groß.

Weitere Informationen dazu, wie Sie mithilfe des Befehls DBCC MEMORYSTATUS Speichers finden Sie unter KB 907877: wie Sie den Befehl DBCC MEMORYSTATUS Speicherverwendung für SQL Server 2005 überwachen .

Status


Microsoft hat bestätigt, dass es sich um ein Problem bei den Microsoft-Produkten handelt, die im Abschnitt „Eigenschaften“ aufgeführt sind.