PHP Fatal error: Allowed memory size of 1610612736 bytes exhausted

Ejecutando

composer update

en una máquina virtual Linux (Laravel Homestead), obtengo este error:

PHP Fatal error:  Allowed memory size of 1610612736 bytes exhausted (tried to allocate 72 bytes) in phar:///usr/local/bin/composer/src/Composer/DependencyResolver/RuleSetGenerator.php on line 64

Fatal error: Allowed memory size of 1610612736 bytes exhausted (tried to allocate 72 bytes) in phar:///usr/local/bin/composer/src/Composer/DependencyResolver/RuleSetGenerator.php on line 64

Check https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors for more info on how to handle out of memory errors.

Solución 1

Una solución es ejecutar el comando con COMPOSER_MEMORY_LIMIT=-1 delante, lo que hace que no tenga límite de memoria:

 COMPOSER_MEMORY_LIMIT=-1 composer update

Solución 2

Otra solución es crear una partición de swap de 4 GB para no quedar sin memoria:

sudo dd if=/dev/zero of=/swapfile bs=1G count=4
sudo mkswap /swapfile
sudo swapon /swapfile

Esta solución es mejor, ya que no vas a volver a tener este problema con otras ejecuciones del mismo comando, al crear una partición de swap.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.