2009-06-30 2 views
3

Während SSIS-Paket ausgeführt wird, ich habe folgende Fehler,SSIS-Paket ausführen - Speicherauslastung!

The buffer manager failed a memory allocation call for 10484608 bytes, but was unable to swap out any buffers to relieve memory pressure. 20 buffers were considered and 20 were locked. Either not enough memory is available to the pipeline because not enough are installed, other processes were using it, or too many buffers are locked.

[DTS.Pipeline] Error: Thread "SourceThread0" has exited with error code 0xC0047038.

[DTS.Pipeline] Error: The Data Flow task failed to create a buffer to call PrimeOutput for output "XML Source 1" (91) on component "GeneralCongfigurations" (98). This error usually occurs due to an out-of-memory condition.

Es passiert, wenn Einsatz der Daten in SQL-Tabelle aus einer XML-Datei mit 'Script Component' versuchen.

Wie löst man es?

+0

Diese Codes sind zum Googlen bestimmt, niemand erkennt sie auf Anhieb. Was sind die SSIS-Protokolleinträge, bevor der Fehler aufgetreten ist? Welche Art von Aufgabe/Schritt ist passiert? Führst du dieses Paket in Visual Studio? – MatthewMartin

Antwort

3

Die Nachricht teilt Ihnen mit, dass SSIS 20 Puffer mit jeweils 10 MB verwendet - etwa 200 MB zusammen. Es ist nicht sehr viel Speicher, selbst auf 1-Gb-Maschine würde nicht der Speicher ausgehen.

Es ist wahrscheinlich, dass andere Prozesse den Rest des Speichers verbrauchen - überprüfen Sie den Task-Manager. Oft ist es SQL Server, der den gesamten Speicher belegt - wenn Sie SQL und SSIS auf demselben Computer ausführen, beschränken Sie die Speichermenge, die SQL verwenden darf (in SQL Server-Eigenschaften), und lässt etwas Speicher für SSIS übrig - ich würde mindestens empfehlen 0,5 GB.

+0

danke für diese Antwort. Das hat uns gerade dabei geholfen, ein ähnliches Problem zu lösen. –

0

Sie sollten sich auch alle Protokollmeldungen ansehen. Insbesondere können Lookup-Transformationen viele Informationen über den von ihnen verwendeten Speicher protokollieren. Sie können einige sehr detaillierte Protokolle über die Speicherzuweisung erhalten.

+1

Kannst du empfehlen, nach diesen Speicherzuweisungsprotokollen zu suchen? –

0

Ich konfrontiert das gleiche Problem. Meine XML-Quelle ist ungefähr 2 MB groß. Als ich das Paket startete, begann es diese OutOfMomory Warnung zu werfen. Mein Server hat rund 8 GB RAM. Es waren also keine Speicherprobleme. Der SQL Server-Dienst der aktuellen Maschine benötigte knapp 6 GB Speicherplatz. Ich könnte dies vom Task-Manager überprüfen. Da mein SSIS-Paket-Ziel eine Verbindung zur Differenzdatenbank hergestellt hat, wollte ich nicht, dass der SQL-Dienst des aktuellen Servers ausgeführt wird. In dem Moment, in dem ich diesen SQL SERVER Service gestoppt habe, wurde mein SSIS-Paket erfolgreich ausgeführt.