On 16 February 2016 at 15:52, arisawa <arisawa@ar.aichi-u.ac.jp> wrote:

I have observed warning messages from dns server:
dns 30792: warning process exceeded 100 file descriptors
dns 30888: warning process exceeded 200 file descriptors

It's worth noting that this message doesn't necessarily mean you've got a file descriptor leak.
It might, but at the start it just means that a process (or process group sharing a file descriptor group) has many file descriptors open.
That could happen if a server with many clients has a file descriptor per client and then client requests open some more.

ndb/dns in particular will try user-level requests in parallel, and those in turn can lead to several concurrent
queries to various name servers at a given level (root itself has 13). Web browser clients will fetch page
elements concurrently. That's why it's useful to check the /proc/N/fd file to try to see what they are.
(Not just for ndb/dns, but for other applications that provoke the message.)
Arguably, if you're using the system in a real, Internet-facing application, the warning message might
be obsolete, compared to the time when even 100 clients was a big network.