Bind 9.7.0-P1 socket: file descriptor exceeds limit / assertion failure

JINMEI Tatuya / 神明達哉 jinmei at isc.org
Mon May 3 19:22:44 UTC 2010


At Thu, 29 Apr 2010 14:53:44 -0700,
Dale Kiefling <dale.kiefling at cbs.com> wrote:

> We have a Bind 9.7.0-P1 instance that is throwing the following errors:
> 21-Apr-2010 16:59:00.173 general: error: socket: file descriptor exceeds 
> limit
> (1024/1024)

The fact that the FD limit is 1024 suggests your named uses select
instead of epoll.  As far as I know Linux kernel 2.6 should support
epoll, so your named may have been built with --disable-epoll.  What's
the result of named -V?

> $ uname -a
> Linux ha1.example.com 2.6.18-128.1.10.el5PAE #1 SMP Thu May 7 11:14:31 
> EDT 2009 i686 athlon i386 GNU/Linux

For a busy recursive server that could consume more than 1024 open
sockets, select won't work well anyway.  Even if you increase the FD
limit it's quite likely that the server hits other scalability issues.
So, if your named was built --disable-epoll, I'd suggest you to
rebuild it with enabling epoll (which should be enabled by default on
your Linux system) and try again.

In any case, the assertion failure should be a bug, but right now I
have no idea about how it happened.

---
JINMEI, Tatuya
Internet Systems Consortium, Inc.



More information about the bind-users mailing list