La génération échoue lorsque la limite de mémoire est dépassée
Une fois que vous avez créé et exécuté une génération, votre génération n'aboutit pas et vous recevez un message indiquant que la limite de mémoire a été dépassée.
Si vous recevez un message indiquant que la limite de mémoire a été dépassée, cela signifie que la taille de votre génération est trop petite.
Lorsqu'une génération s'exécute, elle exécute des étapes, qui incluent des compilations de code ou un conditionnement d'image de conteneur. Ces étapes requièrent de la mémoire. Selon que vous choisissez une taille small, medium,
large, xlarge ou xxlarge pour votre génération, une quantité maximale de stockage éphémère est disponible pour une exécution de génération. Pour plus d'informations sur la taille de la génération, voir
la rubrique permettant d'identifier la taille de la génération. Lorsque la mémoire maximale est atteinte, l'exécution de génération est arrêtée et un message d'erreur est
envoyé. Par exemple :
Exemple de message d'erreur
Summary: Failed
Reason: OOMKilled
Essayez l'une des solutions ci-après.
Que vous exécutiez votre génération depuis la console ou depuis l'interface de ligne de commande, utilisez l'interface de ligne de commande pour traiter les problèmes liés à votre génération.
- Exécutez la commande
ibmcloud ce buildrun get --name BUILDRUN_NAMEpour afficher les détails de votre exécution de génération. - Consultez la section
Reasondans la sortie de la commande.
Pour résoudre ce problème, utilisez une taille plus grande pour la génération.
Une taille de génération plus importante signifie également que davantage de coeurs de mémoire et d'UC sont affectés aux exécutions de génération. Accroître cette taille va probablement accélérer les exécutions de génération, et augmenter leur coût.
Pour plus d'informations sur les tailles de génération, voir Détermination des tailles de génération.
-
Utilisez la commande
ibmcloud ce build updatepour mettre à jour la configuration de génération afin d'utiliser une taille plus grande. Par exemple :ibmcloud ce build update --name <BUILD_NAME> --size <SIZE> -
Utilisez la commande
ibmcloud ce buildrun submitpour soumettre une nouvelle exécution de génération. Pour la commandebuildrun submit, vous devez spécifier l'option--buildpour fournir le nom de votre configuration de génération. Vous pouvez éventuellement spécifier l'option--namepour fournir le nom de cette exécution de génération. Si vous spécifiez l'option--name, veillez à utiliser un autre nom d'exécution de génération que celui de l'exécution de génération ayant échoué, ou à supprimer l'exécution de génération ayant échoué à l'aide de la commandeibmcloud ce buildrun delete. Par exemple :ibmcloud ce buildrun submit --build <BUILD_NAME> --name <BUILDRUN_NAME>