|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2014-11-18 01:49 UTC] a23878941 at gmail dot com
Description: ------------ When PHP-FPM is reloaded via a command like "service php-fpm reload", php-fpm goes down and does not start back up. The following error appears in the log. ERROR: failed to reload: execvp() failed: Argument list too long (7) When debug logging is enabled the error below appears. ERROR: pid 9550, fpm_pctl_exec(), line 102: failed to reload: execvp() failed: Argument list too long (7) Problem only started happening after using more than around 2,600 pools. Problem did not happen with less pools. Problem went away after decreasing the number of pools to below that range. Problem does not happen when php-fpm is simply stopped and started or restarted (i.e. service php-fpm restart). Problem only happens during a reload (i.e. service php-fpm reload). Problem noticed under CentOS 6.6 and PHP 5.3.3. However, I assume problem happens in more recent PHP versions because I can find no evidence of prior bug reports where this has been fixed. Have not been able to test with more recent PHP version. Running "kill -USR2 [php-fpm pid]" causes the same problem as "service php-fpm reload". Using unix sockets and ondemand pm for all pools. Each pool name, corresponding conf file name, and unix socket name is rather long (e.g. 20-40 characters). I don't know if this is related to problem or not. I have not tried shortening pool names to work around problem. Concerning workarounds, increasing stack size (e.g. via ulimit -s) in order to increase ARG_MAX did not solve problem. Research shows that MAX_ARG_STRLEN might be a limiting factor also. Was not able to find a way to increase MAX_ARG_STRLEN. Thanks for any help! PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Wed Oct 29 04:00:01 2025 UTC |
NOTICE: pid 9550, fpm_pctl_exec(), line 98: reloading: execvp("/usr/sbin/php-fpm", {"/usr/sbin/php-fpm", "--daemonize"}) Thanks!