>./yii difference/json mmap() failed: [12] Cannot allocate memory mmap() failed: [12] Cannot allocate memory PHP Fatal error: Out of memory (allocated 4194304) (tried to allocate 2950070488 bytes) in /var/www/html/yii/console/models/Difference.php on line 112 Fatal error: Out of memory (allocated 4194304) (tried to allocate 2950070488 bytes) in /var/www/html/yii/console/models/Difference.php on line 112 PHP Fatal Error 'yii\base\ErrorException' with message 'Out of memory (allocated 4194304) (tried to allocate 2950070488 bytes)' in /var/www/html/yii/console/models/Difference.php:112 Stack trace: #0 [internal function]: yii\base\ErrorHandler->handleFatalError() #1 {main} total 312K
В конфигах пыха стоит ограничение на память, надо увеличить. Или переписать то, что ты там пытаешься делать, так, чтоб не жрало столько памяти. Обычно для консоли ограничение на память не ставят. Где валяются конфиги - зависит от ОС.
А чего ты там такое пилишь, чему нужно 2.7 гига памяти? И сколько памяти на машине, где это исполняется? --- Добавлено --- Если у тебя точно -1, получается, ОС отказала пыхе в выделении такого кол-ва памяти
В прошлый раз такого вообще не было. PHP: public function getJson($value = false) { $content = file_get_contents($this -> file); $array = json_decode($content); $allFields = []; foreach ($array as $item) { $this -> fields = []; echo '.'; $allFields[] = $this -> allFields($item, $value); } return $allFields; }
JSON на 2 гига, массив. Дело не в этом, дело в том, что я первый раз когда писал, то всё работало. А как mmap грузится, оно от рождения там?
Именно в этом, мб в прошлый раз файл поменьше был, а может в этот раз у тебя ещё какие то доп проги запущены, которые память отьедают
Это сишная линуксовая функция для мапинга файла в память. Пыха на сишке написана. Ну значит где-то внутрях пыховых функций, которые ты используешь, она используется.