[Varnish] #169: Varnishd crashes with assert error in bes_ClosedFd

Varnish varnish-bugs at projects.linpro.no
Mon Nov 19 13:41:29 CET 2007


#169: Varnishd crashes with assert error in bes_ClosedFd
----------------------+-----------------------------------------------------
 Reporter:  anders    |        Owner:  phk  
     Type:  defect    |       Status:  new  
 Priority:  normal    |    Milestone:       
Component:  varnishd  |      Version:  trunk
 Severity:  normal    |   Resolution:       
 Keywords:            |  
----------------------+-----------------------------------------------------
Comment (by anders):

 Trying 1.2 branch up to date to commit 2262, this still happens:

 {{{
 Child said (2, 98803): <<Assert error in bes_ClosedFd(),
 cache_backend_simple.c line 282:
   Condition((close(vc->fd)) == 0) not true.
   errno = 54 (Connection reset by peer)
 >>
 Cache child died pid=98803 status=0x86
 }}}

 Backtrace:

 {{{
 (gdb) bt
 #0  0x0000000800d1248c in thr_kill () from /lib/libc.so.7
 #1  0x0000000800d9c63b in abort () from /lib/libc.so.7
 #2  0x000000080066fcff in lbv_assert (func=Could not find the frame base
 for "lbv_assert".
 ) at assert.c:58
 #3  0x000000000040d90f in bes_ClosedFd (w=0x7fffa6735ae0, vc=0x21021120e0)
     at cache_backend_simple.c:282
 #4  0x0000000000409974 in VBE_ClosedFd (w=0x7fffa6735ae0, vc=0x21021120e0)
     at cache_backend.c:292
 #5  0x00000000004137fc in Fetch (sp=0x2104dbf008) at cache_fetch.c:421
 #6  0x000000000040f186 in cnt_fetch (sp=0x2104dbf008) at
 cache_center.c:318
 #7  0x0000000000410f5a in CNT_Session (sp=0x2104dbf008) at steps.h:41
 #8  0x0000000000419d6d in wrk_do_one (w=0x7fffa6735ae0) at
 cache_pool.c:193
 #9  0x000000000041a266 in wrk_thread (priv=0x800f11200) at
 cache_pool.c:246
 #10 0x0000000800a999a8 in pthread_getprio () from /lib/libthr.so.3
 #11 0x0000000000000000 in ?? ()
 Cannot access memory at address 0x7fffa6736000
 (gdb) frame 5
 #5  0x00000000004137fc in Fetch (sp=0x2104dbf008) at cache_fetch.c:421
 421                     VBE_ClosedFd(sp->wrk, vc);
 (gdb) print *sp
 $1 = {magic = 741317722, fd = 373, id = 373, xid = 73492479, restarts = 0,
 wrk = 0x7fffa6735ae0, sockaddrlen = 16, mysockaddrlen = 128, sockaddr =
 0x2104dbf670, mysockaddr = 0x2104dbf6f0, addr = 0x2104dbf770
 "80.241.85.6", port = 0x2104dbf77c "13655", srcaddr = 0x21028cd920,
 doclose = 0x0, http = 0x2104dbf1c8, http0 = 0x2104dbf410, ws = {{magic =
 905626964, id = 0x434f60 "sess", s = 0x2104dbf770 "80.241.85.6", f =
 0x2104dbfa9c "ate: Mon, 19 Nov 2007 12:29:12 GMT", r = 0x0, e =
 0x2104dc3770 '¥' <repeats 200 times>...}}, ws_ses = 0x2104dbf782 "GET",
 ws_req = 0x2104dbfa64 "", htc = {{magic = 1041886673, fd = 373, ws =
 0x2104dbf070, rxbuf = {b = 0x2104dbf782 "GET", e = 0x2104dbfa64 ""},
 pipeline = {b = 0x0, e = 0x0}}}, t_open = 1195475353.2137403, t_req =
 1195475355.5919993, t_resp = nan(0x8000000000000), t_end =
 1195475353.2137403, step = STP_FETCH, cur_method = 0, handling = 32,
 wantbody = 1 '\001', err_code = 200, err_reason = 0x0, list = {vtqe_next =
 0x210592e008, vtqe_prev = 0x2103fbf120}, backend = 0x800f16140, bereq =
 0x2109769000, obj = 0x886680000, vcl = 0x2101f039a0, mem = 0x2104dbf000,
 workreq = {list = {vtqe_next = 0x0, vtqe_prev = 0x0}, sess =
 0x2104dbf008}, acct = {first = 1195475325.9522676, sess = 1, req = 13,
 pipe = 0, pass = 0, fetch = 13, hdrbytes = 4482, bodybytes = 291106},
 nhashptr = 6, ihashptr = 4, lhashptr = 49, hashptr = 0x2104dbfa68}
 }}}

-- 
Ticket URL: <http://varnish.projects.linpro.no/ticket/169#comment:2>
Varnish <http://varnish.projects.linpro.no/>
The Varnish HTTP Accelerator


More information about the varnish-bugs mailing list