Ulimit problem (Too many open files)

33 views
Skip to first unread message

den...@gmail.com

unread,
May 29, 2014, 11:39:07 AM5/29/14
to gd...@googlegroups.com
Hello Brandon!

Seems I breached another unnoticed limit in gdnsd :D

Could you please elaborate me on a proper facility to set up ulimits for gdnsd?

Surely I can do something like the init script (and actually I did), which sources "ulimit -n X" string from /etc/default/gdnsd (Debian/Ubuntu way). But you propogate ideology where gdnsd's binary is an init script itself.
Currently I'm getting this message:
# /usr/sbin/gdnsd restart
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files
plugin_http_status: Failed to create monitoring socket: Too many open files

Thanks in advance!

Brandon Black

unread,
May 29, 2014, 11:51:49 AM5/29/14
to gdnsd
On Thu, May 29, 2014 at 10:39 AM, <gdnsd+noreply-APn2wQfGKkkaYfpced...@googlegroups.com> wrote:
Hello Brandon!

Seems I breached another unnoticed limit in gdnsd :D

Could you please elaborate me on a proper facility to set up ulimits for gdnsd?

Surely I can do something like the init script (and actually I did), which sources "ulimit -n X" string from /etc/default/gdnsd (Debian/Ubuntu way). But you propogate ideology where gdnsd's binary is an init script itself.

I like the binary to at least handle the hard parts the daemon management; in practice most distro packages will inevitably provide a thin wrapper initscript to mate up with their init system interfaces correctly (if nothing else, how output is printed and exit values are handled).

There's nothing inherently wrong with using an initscript wrapper around gdnsd so long as it takes advantage of gdnsd's own management by mostly passing off the work to gdnsd invocations instead of trying to parse pidfiles and check status independently, etc.  This works fine (even with the non-standard verbs in play) in every case except for systemd, but that's a whole other issue...

In any case, current non-systemd Debian/Ubuntu systems have official packages for gdnsd, and they do use an initscript wrapper, and you can modify ulimits via /etc/default/gdnsd.  You can see the upstream github copy of the official initscript here: https://github.com/paravoid/gdnsd/blob/debian/debian/gdnsd.init.d

-- Brandon
Reply all
Reply to author
Forward
0 new messages