<div>I am getting an Assert error which I think is related to a synthetic {...} call I make in the vcl on PURGE commands from the back-end.  Is this is a known issue?  Should I be doing something differently?</div>
<div><br></div><div>Here's an abbreviated version of the vcl:</div><div><br></div><div><div>acl purge {</div><div>    "127.0.0.1";</div><div>    "192.168.[...]"/[...];</div><div>
}</div></div><div><br></div><div><div>sub vcl_recv {</div><div>    set req.backend = dir;</div><div><br></div><div>    if (req.request == "PURGE") {</div>
<div>        # if IP is not in "purge" acl, don't allow</div><div>        if (!client.ip ~ purge) {</div><div>            error 405 "Not allowed";</div><div>        } else {</div><div>            purge("req.url ~ " req.url);</div>


<div>            synthetic {"Purged"};</div><div>            return (lookup);</div><div>        }</div><div>    }</div></div><div>}</div><div><br></div><div>I'm running Varnish 2.1.4, which I compiled myself.  This happened with varnish 2.1.3 too.  I'm running Red Hat Enterprise Linux Server release 5.5 with 64-bit cpus.</div>


<div><br></div><div>Here's the error from the syslog:</div><div><br></div><div>Nov 12 22:49:15 squid1 varnishd[2433]: Child (13846) Panic message: Assert error in VRT_synth_page(), cache_vrt.c line 989:   Condition((sp->obj) != NULL) not true. thread = (cache-worker) ident = Linux,2.6.18-194.17.4.el5,x86_64,-smalloc,-sfile,-hcritbit,epoll Backtrace:   0x423996: pan_ic+b6   0x42b153: VRT_synth_page+1e3   0x2ac3b2c1e31a: _end+2ac3b25aad52   0x4289a3: VCL_recv_method+43   0x4143fa: CNT_Session+5ca   0x425d58: wrk_do_cnt_sess+b8   0x42505e: wrk_thread_real+32e   0x32fa00673d: _end+32f9993175   0x32f90d3f6d: _end+32f8a609a5 sp = 0x2ac47b38e008 {   fd = 64, id = 64, xid = 1187807240,   client = 192.168.[...] 53762,   step = STP_RECV,   handling = deliver,   restarts = 0, esis = 0   ws = 0x2ac47b38e080 {      id = "sess",     {s,f,r,e} = {0x2ac47b38ecd8,+184,(nil),+65536},   },   http[req] = {     ws = 0x2ac47b38e080[sess]       "PURGE",       "<a href="http://www.wikihow.com/Document-Employee-Performance" target="_blank">http://www.wikihow.com/Document-Employee-Performance</a>",       "HTTP/1.0",       "Connection: Keep-Alive",   },   worker = 0x2ac6fe7bbe60 {     ws = 0x2</div>



<div><br></div><div>Thanks,</div><div><br></div><div>Reuben</div>