Not sure whether the bug is in pecl-APC (built from ports) or in the base
I used to run lighttpd + php fastcgi + pecl-APC since FreeBSD 7.0-RELEASE
with no issue so far.
The previous -STABLE update was dated Mar 30.
Today, I upgraded to today's (Apr 13) -STABLE.
And now, php-cgi children leak descriptors. Opened PHP files are not closed,
the same files are opened as new descriptors at every request. This can be
confirmed with procstat -f on php-cgi processes.
After a few minutes, more than 100000 descriptors are used and the system
Reverting to FreeBSD-STABLE from Mar 30 fixes this. No more than 1000
file descriptors are ever used when the same workload.
Dropping pecl-APC for Xcache is a workaround (and Xcache doesn't exhibit
that behavior), but there's definitely something wrong. Either with the
recent FreeBSD changes or with the APC port.
Since we need to pick a category, let's assign this one to 'ports' and
to the www/pecl-APC maintainer. It sounds to me as though there might
be two problems, one in the port and one in the base system.
Can you confirm if you use php4?
No, it's PHP 5.
All from ports.
It happens on Debian Etch, too. I see this problem with PHP 5.2.5, not PHP4.
So it is NOT in the FreeBSD base system. It is a bug in APC, first appeared
in 3.0.17, 3.0.18 is also affected.
Le Tue, Apr 22, 2008 at 12:03:31PM +0200, Zoltan Frombach ecrivait :
> It happens on Debian Etch, too. I see this problem with PHP 5.2.5, not
> PHP4. So it is NOT in the FreeBSD base system. It is a bug in APC, first
> appeared in 3.0.17, 3.0.18 is also affected.
The bug is actually in a FreeBSD patch that imports a bogus diff from the APC
Here's the fix. PHP 5 doesn't leak descriptors any more.
Frank Denis - j [at] pureftpd.org - NSI / Young Nails / CND nail tech
http://forum.manucure.info - http://www.manucure-pro.com - http://00f.net
Well, this is a known issue:
There is a new version available 3.0.19 which fixes the filedescriptor bug.
And chance there will be a port update soon?
Updated to 3.0.19 to solve this problem. Thanks.