Edit report at https://bugs.php.net/bug.php?id=55486&edit=1
ID: 55486 Updated by: f...@php.net Reported by: hi dot laowang at gmail dot com Summary: status show BIG processes number -Status: Analyzed +Status: Closed Type: Bug Package: FPM related Operating System: centos PHP Version: 5.3.7 Assigned To: fat Block user comment: N Private report: N New Comment: This bug has been fixed in SVN. Snapshots of the sources are packaged every three hours; this change will be in the next snapshot. You can grab the snapshot at http://snaps.php.net/. For Windows: http://windows.php.net/snapshots/ Thank you for the report, and for helping us make PHP better. Previous Comments: ------------------------------------------------------------------------ [2011-10-08 19:50:02] f...@php.net Automatic comment from SVN on behalf of fat Revision: http://svn.php.net/viewvc/?view=revision&revision=317915 Log: - Fixed bug #55486 (status show BIG processes number) ------------------------------------------------------------------------ [2011-10-05 14:44:00] andreausu at gmail dot com Thanks, simply moving the fpm_scoreboard_update line outside that if did the trick. I hope someone will commit a fix into the svn. ------------------------------------------------------------------------ [2011-10-04 10:29:59] witekfl at gazeta dot pl It is a guess that the problem is caused by this code (the fragment of fpm_process_ctl.c line 339): /* update status structure for all PMs */ if (wp->listen_address_domain == FPM_AF_INET) { if (0 > fpm_socket_get_listening_queue(wp->listening_socket, &cur_lq, NULL)) { cur_lq = 0; #if 0 } else { if (cur_lq > 0) { if (!wp->warn_lq) { zlog(ZLOG_WARNING, "[pool %s] listening queue is not empty, #%d requests are waiting to be served, consider raising pm.max_children setting (%d)", wp->config->name, cur_lq, wp->config->pm_max_children); wp->warn_lq = 1; } } else { wp->warn_lq = 0; } #endif } fpm_scoreboard_update(idle, active, cur_lq, -1, -1, -1,FPM_SCOREBOARD_ACTION_SET, wp->scoreboard); } --- As you can see the fpm_scoreboard_update is called only when the php-fpm listens on AF_INET, but not on the unix sockets. It is is a guess, I didn't test it, but this code is suspicious. ------------------------------------------------------------------------ [2011-09-22 09:34:37] andreausu at gmail dot com Hi, I'm having the same problem. PHP Version: 5.3.8 OS: Ubuntu 10.04.3 LTS Compile options: './configure' '--enable-fpm' '--with-mcrypt' '--with-zlib' '-- enable-mbstring' '--with-openssl' '--with-mysql=mysqlnd' '--with-mysql-sock' '--with-pdo-mysql=mysqlnd' '--with-gd' '--with-jpeg- dir=/usr/lib' '--enable-gd-native-ttf' '--with- curl=/usr/include/curl' It seems that the number of idle processes rises until php-fpm is restarted, you can see the behavior from this munin graph: http://i.imgur.com/ztmYN.png Let me know if you need any additional info in order to debug this. Thanks, Andrea ------------------------------------------------------------------------ [2011-08-24 01:22:39] hi dot laowang at gmail dot com # ps aux | grep php-fpm | wc -l 127 ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=55486 -- Edit this bug report at https://bugs.php.net/bug.php?id=55486&edit=1