Ответ 1
Проблема решена, php
build с litespeed api (lsapi)
имеет дополнительную переменную env
для определения времени max - LSAPI_MAX_PROCESS_TIME
(по умолчанию 300 с).
My script сравнивает 2 дерева источников, создает карту возможных измененных файлов, сравнивает хеши MD5 и создает diff-пакет.
После 28000-29000 файлов PHP завершает script с ошибкой:
Неустранимая ошибка: максимальное время выполнения 0 секунд превышено в /root/ _PACKER-TESTER/core/diff.class.php в строке 67 (стандартный вызов in_array())
Я уже пытался установить max_input_time
на высокое значение (или ноль) - ничего.
Настройка max_execution_time
до 99999999999999 ничего не делает.... такая же ошибка.
Проблема решена, php
build с litespeed api (lsapi)
имеет дополнительную переменную env
для определения времени max - LSAPI_MAX_PROCESS_TIME
(по умолчанию 300 с).
Попробуйте установить max_input_time = -1
в php.ini
или используя set_time_limit(-1)
. Это сработало для меня, не перестраивая PHP.
Эта статья объясняет это красиво.
Попробуйте set_time_limit() и зайдите в phpinfo(), если вы можете установить ограничение по времени:
set_time_limit(60*60);phpinfo();exit;
Я обнаружил, что "максимальное время выполнения с превышением 0 секунд" может быть вызвано тем, что код переходит в бесконечный цикл.
Например:
while (true) { ... }
вызывает эту ошибку для меня.
Если это не переменная среды (как упоминалось ранее), я бы рассмотрел, что из номера строки, сообщенного php, с ошибкой