1
0
Fork 0

Merge remote-tracking branch 'chEbba/memory_limit'

Conflicts:
	bin/composer
pull/1015/merge
Jordi Boggiano 2012-08-24 17:39:49 +02:00
commit 3946a44499
2 changed files with 49 additions and 1 deletions

View File

@ -9,8 +9,29 @@ error_reporting(-1);
if (function_exists('ini_set')) { if (function_exists('ini_set')) {
@ini_set('display_errors', 1); @ini_set('display_errors', 1);
$memoryInBytes = function ($value) {
$unit = strtolower(substr($value, -1, 1));
$value = (int) $value;
switch($unit) {
case 'g':
$value *= 1024;
case 'm':
$value *= 1024;
case 'k':
$value *= 1024;
}
return $value;
};
$memoryLimit = trim(ini_get('memory_limit'));
// Increase memory_limit if it is lower than 512M
if ($memoryLimit != -1 && $memoryInBytes($memoryLimit) < 512 * 1024 * 1024) {
@ini_set('memory_limit', '512M'); @ini_set('memory_limit', '512M');
} }
unset($memoryInBytes, $memoryLimit);
}
// run the command application // run the command application
$application = new Application(); $application = new Application();

View File

@ -0,0 +1,27 @@
<!--
tagline: Solving problems
-->
# Memory limit errors
If composer shows memory errors on some commands:
PHP Fatal error: Allowed memory size of XXXXXX bytes exhausted <...>
The `memory_limit` ini value should be increased.
> **Note:** Composer internally increases the memory_limit to 512M.
> It is a good idea to create an issue for composer if you get memory errors.
Get current value:
php -r "echo ini_get('memory_limit').PHP_EOL;"
Increase limit with `php.ini` for a `CLI SAPI` (ex. `/etc/php5/cli/php.ini` for Debian-like systems):
; Use -1 for unlimited or define explicit value like 512M
memory_limit = -1
Or with command line arguments:
php -d memory_limit=-1 composer.phar <...>