Ich habe genau dieses Problem gesehen und der Hotfix, der letztendlich veröffentlicht wurde, um es zu beheben, war tatsächlich ein direktes Ergebnis meines Falls mit Microsoft CSS. Es gibt keinen öffentlichen KB-Artikel für das Update. Stellen Sie sicher, dass Sie Service Pack 4 und das neueste kumulative Update auf SQL Server angewendet haben (zum Zeitpunkt des Schreibens ist dies das kumulative Update Nr. 3 (9.00.5259) ).
Bis zur Veröffentlichung des Hotfixes schlug Microsoft vor, die Erstellung von # temp- Tabellen einfach einzustellen (ähnlich wie bei KB # 916086 ). Da dies ein erhebliches Umschreiben von Dutzenden und Dutzenden von Berichtsverfahren bedeutet hätte, bestand die Problemumgehung in meinem Fall (unabhängig von Ablaufverfolgungsflags oder temporärem Dateilayout) darin, unseren Cluster jedes zweite Wochenende neu zu starten. Yuck.
Um die Verwendung von Tempdb aufzuspüren, gibt es verschiedene Skripte, die helfen können, z. B. Adam Machanics sp_whoIsActive , insbesondere:
Und auch dieses Skript (und eines in den Kommentaren) von @SQLSoldier:
Ich würde sicherstellen, dass alle Ihre Cursor verwenden LOCAL STATIC READ_ONLY FORWARD_ONLY
(siehe dies und das ) und prüfen, ob es bekannte teure Abfragen gibt, die #temp tables / @table-Variablen, CTEs in großem Umfang verwenden oder unnötige Sortierungen enthalten oder zu Hash-Joins führen ... all dies kann zu dem Problem beitragen (ich bezweifle, dass Sie eine goldene Ursache finden werden). Die einfachste Lösung als "Bang-for-Your-Buck" -Startpunkt ist die Verwendung geeigneter und kostengünstiger Cursoroptionen anstelle der Standardeinstellungen.
In der Zwischenzeit würde ich (a) CU # 3 installieren und (b) PSS aufrufen. Sagen Sie ihnen, dass Sie nach einem ganz bestimmten Fix suchen , der bereits als Fehler bestätigt und als privater Hotfix für andere Benutzer freigegeben wurde: "VSTS # 109112 - Der verzögerte Drop der temporären Tabelle lässt sich für bestimmte Workloads nicht skalieren." Möglicherweise müssen Sie die Fallgebühr zunächst bezahlen, aber da es sich um einen Fehler handelt, sollte die Gebühr erstattet werden.
SELECT @@VERSION;
? Gemäß meiner Antwort wird mein erster Vorschlag sein, sicherzustellen, dass Sie auf SP4 und dem neuesten kumulativen Update sind.