M
M
mihelsonkk2016-10-01 16:23:27
PHP
mihelsonkk, 2016-10-01 16:23:27

What does php-fpm do after SIGSEGV?

The situation is this. Centos 6.2 Php-fpm worked great. Moved site from another host - problems started in this new php-fpm pool. Lots of PHP Fatal errors in the pool log - for various reasons. There is also SIGSEGV in the php-fpm log. (and in dmesg itself) Some coincide in time.
The pm schema is
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
As SIGSEGV progressed, the number of processes in the pool decreased until there were none left. Site lay down. Restarted php-fpm as a temporary solution.
Why a fatal error results in a segfault is an interesting question in itself, but there is no point in asking here. I understand with coredump.
My question is - was php-fpm supposed to replace the processes that fell by segfault with new ones? (why none left?) emergency_restart_threshold and emergency_restart_interval - were set - but segfaults were rare, about 1 time per hour and didn't fit the interval condition. If this is the normal behavior of php-fpm (I didn't find anything on the topic on php.net), is it possible to configure the creation of a new worker after a segfault?

Answer the question

In order to leave comments, you need to log in

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question