[Varnish] #639: Assert on writing to CLI when child process dies

Varnish varnish-bugs at projects.linpro.no
Mon Feb 1 11:22:47 CET 2010


#639: Assert on writing to CLI when child process dies
------------------------------+---------------------------------------------
 Reporter:  tgr               |        Owner:  phk
     Type:  defect            |       Status:  new
 Priority:  normal            |    Milestone:     
Component:  varnishd          |      Version:  2.0
 Severity:  normal            |   Resolution:     
 Keywords:  2.0.6 CLI assert  |  
------------------------------+---------------------------------------------
Old description:

> varnishd 2.0.6 on Debian Lenny amd64.
>
> When a child dies:
>
> Jan 29 10:51:10 webcache4 varnishd[24741]: Child (24742) not responding
> to ping, killing it.
> Jan 29 10:51:12 webcache4 varnishd[24741]: Child (24742) not responding
> to ping, killing it.
>
> and there's a CLI command being written to the child, an xxxassert() is
> raised:
>
> #3  0x000000000042ef64 in mgt_cli_vlu (priv=0x7fb112813c00,
>     p=0x7fb1128d3000 "debug.health") at mgt_cli.c:270
> 270                             xxxassert(i == strlen(p));
>

> The master process should handle the unfinished write(), rather than
> aborting.
>
> As a dirty interim fix, it *should* be OK to ignore the unfinished write,
> like in the attached patch.

New description:

 varnishd 2.0.6 on Debian Lenny amd64.

 When a child dies:

 {{{
 Jan 29 10:51:10 webcache4 varnishd[24741]: Child (24742) not responding to
 ping, killing it.
 Jan 29 10:51:12 webcache4 varnishd[24741]: Child (24742) not responding to
 ping, killing it.
 }}}
 and there's a CLI command being written to the child, an xxxassert() is
 raised:
 {{{
 #3  0x000000000042ef64 in mgt_cli_vlu (priv=0x7fb112813c00,
     p=0x7fb1128d3000 "debug.health") at mgt_cli.c:270
 270                             xxxassert(i == strlen(p));
 }}}

 The master process should handle the unfinished write(), rather than
 aborting.

 As a dirty interim fix, it *should* be OK to ignore the unfinished write,
 like in the attached patch.

Comment (by phk):

 fixed formatting

-- 
Ticket URL: <http://www.varnish-cache.org/ticket/639#comment:1>
Varnish <http://varnish.projects.linpro.no/>
The Varnish HTTP Accelerator


More information about the varnish-bugs mailing list