Ich habe zuvor eine question über eine gespeicherte Prozedur, die zu langsam auf einem SQL Server-Feld ausgeführt wurde gefragt, aber wenn ich den Sproc in Query Analyzer ausgeführt würde, würde es zurückkehren unter einer Sekunde. Der Client ist eine .NET 1.1 Winforms App.Leistungsprobleme mit einem gespeicherten proc - Schließen einer Verbindung zu langsam
Ich konnte VNC in die Box des Benutzers und natürlich, sie hatten keine SQL-Tools installiert, so dass ich Excel, ging in VBA und schrieb eine schnelle Funktion, um die SPROC mit genau die gleichen Parameter aufrufen.
Es stellt sich heraus, dass der Sproc Subsecond zurückgibt und ich alle Zeilen in kürzester Zeit durchlaufen kann. Das Schließen der Verbindung dauert jedoch sehr lange und reicht von 5 Sekunden bis 30 Sekunden.
Warum würde das Schließen einer Verbindung so lange dauern?
Wir haben das Problem gefunden. Der Lese-/Schreib-Cache im RAID-Array wurde aufgrund einer leeren Batterie von der lokalen IT deaktiviert. Fragen Sie mich nicht, warum auf der Welt das RAID-Array auf einer Batterie läuft. – AngryHacker
Die Batterie wird verwendet, um den Cache des RAID-Controllers im Speicher zu speichern. Wenn der Strom während eines Schreibvorgangs ausfällt, hält der RAID-Controller die Daten fest, die auf die Festplatte geschrieben werden müssen, damit Ihre Arrays sicher sind. Wenn diese Batterie ausfällt, ist das Caching deaktiviert. –
Danke. Das erklärt es. – AngryHacker