increasing file descriptors
Philip M. Gollucci
pgollucci at p6m7g8.com
Thu May 8 05:16:43 UTC 2008
oxy wrote:
> the error in httpd-error.log is:
> /usr/src/lib/bind/isc/../../../contrib/bind9/lib/isc/unix/socket.c:2238:
> REQUIRE(maxfd <= (int)1024U) failed.
> /usr/src/lib/bind/isc/../../../contrib/bind9/lib/isc/unix/socket.c:2238:
> REQUIRE(maxfd <= (int)1024U) failed.
> /usr/src/lib/bind/isc/../../../contrib/bind9/lib/isc/unix/socket.c:2238:
> REQUIRE(maxfd <= (int)1024U) failed.
You aren't running out of file descriptions, you are confusing bind.
Why are these errors in your httpd logs? If you were out of file
descriptors, you would see
file: table is full
check the dmesg buffer. Are you using mod_domain in httpd ?
>
>/usr/src/lib/bind/isc/../../../contrib/bind9/lib/isc/unix/socket.c:2238:
> REQUIRE(maxfd <= (int)1024U) failed.
As seen in the actual source file:
REQUIRE(maxfd <= (int)FD_SETSIZE);
that (int)1024U comes from
/usr/src/sys/sys/select.h
/*
* Select uses bit masks of file descriptors in longs. These macros
* manipulate such bit fields (the filesystem macros use chars).
* FD_SETSIZE may be defined by the user, but the default here should
* be enough for most uses.
*/
#ifndef FD_SETSIZE
#define FD_SETSIZE 1024U
#endif
You can raise this, but you'll need to recompile bind too.
I'd start with 2048U if I were you.
Bind does this b/c it indexes arrays for sockets based on this.
More information about the freebsd-apache
mailing list