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

Varnish varnish-bugs at projects.linpro.no
Fri Jan 29 16:58:19 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    |    Keywords:  2.0.6 CLI assert
----------------------+-----------------------------------------------------
 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.

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


More information about the varnish-bugs mailing list