Fixed, thanks!
Poul-Henning
In message <180e6a10903201237y1e86bc00vdd7c7b473a996...@mail.gmail.com>, Eden L
i writes:
>Hi all,
>
>We ran into a situation where our backend held connections open for so
>long that we ran into the open file limit. After clearing up the
>backend and ensuring, varnish never came back and we had to restart it
>in order for it to start relaying connections again.
>
>Flipping on debug mode shows the error "Too many open files when
>accept(2)ing. Sleeping." which should sleep for 50 milliseconds
>(according to param.show). Instead it seems to be sleeping for
>50*1000 *seconds* (13 hours). Looking at the code, it appears that
>this is either a doc bug or a code bug. I was able to fix the root
>issue with this patch:
>
>--- a/varnish-2.0.1/bin/varnishd/cache_acceptor.c 2008-10-17
>11:59:49.0 -0700
>+++ b/varnish-2.0.1/bin/varnishd/cache_acceptor.c 2009-03-20
>12:16:15.0 -0700
>@@ -228,7 +228,7 @@
>case EMFILE:
>VSL(SLT_Debug, ls->sock,
>"Too many open files when
>accept(2)ing. Sleeping.");
>-
>TIM_sleep(params->accept_fd_holdoff * 1000.0);
>+
>TIM_sleep(params->accept_fd_holdoff * 0.001);
>break;
>default:
>VSL(SLT_Debug, ls->sock,
>
>Is this the right fix? Should I create a ticket in trac for this?
>We're getting around it now by setting the max open file limit and
>listen_depth appropriately so that varnish never gets to this point,
>but it'd be nice if this was fixed in case we ever accidentally get
>here again.
>___
>varnish-dev mailing list
>varnish-dev@projects.linpro.no
>http://projects.linpro.no/mailman/listinfo/varnish-dev
>
--
Poul-Henning Kamp | UNIX since Zilog Zeus 3.20
p...@freebsd.org | TCP/IP since RFC 956
FreeBSD committer | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.
___
varnish-dev mailing list
varnish-dev@projects.linpro.no
http://projects.linpro.no/mailman/listinfo/varnish-dev