2009-06-30 31 views
3

Pendant l'exécution package SSIS, je me suis erreurs suivantes,Exécution du package SSIS - Problème de mémoire insuffisante!

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.

Il se produit lorsque vous essayez insérer des données de table SQL à partir d'un fichier XML avec 'Script Component'.

Comment le résoudre?

+0

Ces codes sont destinés à googler, personne ne les reconnaît du premier coup. De même, quelles sont les entrées du journal SSIS avant que l'erreur ne se produise? Quel genre de tâche/étape s'est-il passé? Courez-vous ce paquet dans Visual Studio? – MatthewMartin

Répondre

3

Le message vous indique que SSIS utilise 20 tampons, 10 Mo chacun - environ 200 Mo ensemble. Ce n'est pas une très grande quantité de mémoire, même sur une machine 1Gb vous ne manqueriez pas de mémoire.

Il est probable que d'autres processus consomment le reste de la mémoire - vérifiez le gestionnaire de tâches. Souvent, c'est SQL Server qui consomme toute la mémoire - si vous exécutez SQL et SSIS sur la même machine, limitez la quantité de mémoire que SQL est autorisé à consommer (dans les propriétés SQL Server), laissant de la mémoire pour SSIS - je recommande de laisser au moins 0.5Gb.

+0

merci pour cette réponse. cela nous a juste aidés à résoudre un problème similaire. –

0

Vous devriez également consulter tous les messages du journal. En particulier, les transformations de recherche peuvent consigner beaucoup d'informations sur la quantité de mémoire utilisée. Vous pouvez obtenir des journaux très détaillés sur l'allocation de mémoire.

+1

Pourriez-vous recommander par où commencer la recherche de ces journaux d'allocation de mémoire? –

0

J'ai fait face au même problème. Ma source XML est d'environ 2MB. quand je démarre le paquet, il a commencé à lancer cet avertissement OutOfMomory. Mon serveur a environ 8 Go de RAM. Donc, ce n'était pas des problèmes de mémoire. Le service SQL Server actuel de la machine prenait près de 6 Go d'espace. Je pourrais vérifier cela à partir du Gestionnaire des tâches. Comme ma destination de package SSIS se connectait à la base de données de différences, je ne voulais pas que le service SQL du serveur en cours s'exécute. Donc, le moment où j'ai arrêté ce service SQL Server, mon package SSIS exécuté avec succès.

Questions connexes