[Varnish] #1452: Assert error in VRT_r_obj_status(), cache/cache_vrt_var.c

Varnish varnish-bugs at varnish-cache.org
Mon Mar 17 14:17:16 CET 2014


#1452: Assert error in VRT_r_obj_status(), cache/cache_vrt_var.c
----------------------+---------------------------------
 Reporter:  lkarsten  |      Owner:
     Type:  defect    |     Status:  new
 Priority:  normal    |  Milestone:  Varnish 4.0 release
Component:  varnishd  |    Version:  trunk
 Severity:  normal    |   Keywords:
----------------------+---------------------------------
 Converting synthetic/redirect code from 3.0 til 4.0, I forgot one instance
 and tried to read obj.status in vcl_error. This leads to an assert.

 {{{
     if (obj.status == 790) {
         set resp.http.Content-Type = "text/plain; charset=utf-8";
         set resp.status = 200;
         synthetic({"You are "} + client.ip);
        return (deliver);
     }
 }}}

 {{{
 Last panic at: Mon, 17 Mar 2014 13:12:37 GMT
 Assert error in VRT_r_obj_status(), cache/cache_vrt_var.c line 117:
   Condition((ctx->http_obj) != NULL) not true.
 thread = (cache-worker)
 ident = Linux,3.11.0-18-generic,x86_64,-smalloc,-smalloc,-hcritbit,epoll
 Backtrace:
   0x439586: pan_backtrace+0x19
   0x439890: pan_ic+0x1e9
   0x44c727: VRT_r_obj_status+0xb5
   0x7f1b08207633: ./vcl.oeHHka5i.so(VGC_function_vcl_error+0x23)
 [0x7f1b08207633]
   0x447b67: vcl_call_method+0x402
   0x448ad7: VCL_error_method+0x125
   0x43ca6f: cnt_error+0x370
   0x43f595: CNT_Request+0x560
   0x4328fa: HTTP1_Session+0x426
   0x4424ca: ses_req_pool_task+0x166
 req = 0x7f1ae0090a90 {
   sp = 0x7f1ad4001810, vxid = 1073741826,  step = R_STP_ERROR,
   req_body = R_BODY_NONE,
   err_code = 790, err_reason = whoami,
   restarts = 0, esi_level = 0
   sp = 0x7f1ad4001810 {
     fd = 11, vxid = 1,
     client = 77.40.251.100 48578,
     step = S_STP_WORKING,
   },
   worker = 0x7f1af8fcfc30 {
     ws = 0x7f1af8fcfe30 {
       id = "wrk",
       {s,f,r,e} = {0x7f1af8fcf400,0x7f1af8fcf400,(nil),+2048},
     },
   VCL::method = ERROR,
   VCL::return = abandon,
   },
   ws = 0x7f1ae0090c10 {
     id = "req",
     {s,f,r,e} = {0x7f1ae0092a68,+224,(nil),+57384},
   },
   http[req] = {
     ws = 0x7f1ae0090c10[req]
       "GET",
       "/whoami",
       "HTTP/1.1",
       "TE: deflate,gzip;q=0.3",
       "Connection: TE, close",
       "Host: hyse.org",
       "User-Agent: lwp-request/6.03 libwww-perl/6.05",
   },
   http[resp] = {
     ws = 0x7f1ae0090c10[req]
       "HTTP/1.1",
       "790",
       "whoami",
       "Date: Mon, 17 Mar 2014 13:12:34 GMT",
       "Server: Varnish",
       "X-Varnish: 2",
   },
   vcl = {
     srcname = {
       "input",
       "Default",
     },
   },
 },
 }}}

-- 
Ticket URL: <https://www.varnish-cache.org/trac/ticket/1452>
Varnish <https://varnish-cache.org/>
The Varnish HTTP Accelerator




More information about the varnish-bugs mailing list