PHP Fatal error: Allowed memory size of *** bytes exhausted

Автор muzabbar, 13 июня 2009, 16:24:25

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

muzabbar

Версия 1.1.9

При попытке сделать бекап

(отмечены все 3 галочки:
Сохранить структуру таблиц.
Сохранить все данные из таблиц. (только самое важное.)
Сжать файл gzip.)

получаю пустой файл при сохранении.

В error_log на это действие вижу:

PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 44284683 bytes) in Unknown on line 0

phpinfo показывает:
memory_limit   128M

Когда галочка (Сжать файл gzip.) снята, бекап сохраняется. Но тогда размер бекапа раза в 2.5 больше архивированного.

Что нужно сделать, чтобы бекап работал как раньше?

в php.ini прописал 128M - не помогает

плюс в папке с форумом стали создаваться файлы core.23814 размером 30Мб


dasknix

не согласен! вы подумайте только, это какой должен быт двиг чтобы ему
надо было на поточную ф-цию 128 метров! это раз. два - собссно даже
если архив на полтерабайта единственное что должн в идеале влиять на
успех это max_ececution_time, но никак не размер памяти, у каждого более
менее уважающего себя бинарника есть буфера, которые имеют особенность
заполняться и освобождаться по мере процессинга данных, это такая же схема,
как например deflate-фильтр в апаче, если он в процессе отправки юзеру файла,
размером в 2-3 гига это же не значит что ему нужно столько в памяти!.. а уж о
SMF и речи быть не может.. короче это баг, времени к сожалению разбираться с
этим нет но это косяк кодеров 100%.. у меня та же фигня при подключении SMF к
серверу пакетов [ mods.simplemachines.org ]:
[Tue Mar 22 17:56:55 2011] [error] [client 178.162.105.38] PHP Fatal error:  Allowed memory size of 33554432 bytes exhausted (tried to allocate 2696892 bytes) in Unknown on line 0
[Tue Mar 22 17:57:46 2011] [error] [client 178.162.105.38] PHP Fatal error:  Allowed memory size of 33554432 bytes exhausted (tried to allocate 2696892 bytes) in Unknown on line 0
^C


..и это при том, что:

host# g memory /usr/local/etc/php.ini
memory_limit = 128M
host#