<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="GENERATOR" content="GtkHTML/4.6.5">
</head>
<body>
Hi,<br>
<br>
I am evaluating the varnish cache in our environment in order to alleviate load on backend servers.<br>
<br>
I'm running with the following parameters on a solaris11.1 server<br>
<blockquote>sudo /opt/varnish-4.0.2/sbin/varnishd -a :6081 -u varnishuser -g varnishgroup -n /data/varnish/cache -f /data/varnish/conf.d/default.vcl -s malloc,256m -p 'cc_command=exec cp /opt/varnish-4.0.2/config/varnish-config.so %o'<br>
</blockquote>
(the copy option is to avoid having to install a compiler on the server the cache is running on as the application is built elsewhere)<br>
<br>
I'm finding that the child process regularly restarts with the following panic message being logged into the messages file, this can be after a few minutes or a few hours.<br>
I'm wondering if this is likely to be a bug or possibly something to do with my environment<br>
It does seem to be similar to <a href="https://www.varnish-cache.org/trac/ticket/1552">
https://www.varnish-cache.org/trac/ticket/1552</a> but that was in a separate function.<br>
<br>
Oct 31 01:45:56 t3 /data/varnish/cache[29402]: [ID 232431 local0.error] Child (29404) Panic message:<br>
Oct 31 12:45:56 t3 Assert error in http1_cleanup(), cache/cache_http1_fsm.c line 207:<br>
Oct 31 12:45:56 t3   Condition((req->vsl->wid) != 0) not true.<br>
Oct 31 12:45:56 t3 errno = 131 (Connection reset by peer)<br>
Oct 31 12:45:56 t3 thread = (cache-worker)<br>
Oct 31 12:45:56 t3 ident = -smalloc,-smalloc,-hcritbit,ports<br>
Oct 31 12:45:56 t3 Backtrace:<br>
Oct 31 12:45:56 t3   80882f2: /opt/varnish-4.0.2/sbin/varnishd'pan_ic+0xd2 [0x80882f2]<br>
Oct 31 12:45:56 t3   8080c43: /opt/varnish-4.0.2/sbin/varnishd'http1_cleanup+0x3b3 [0x8080c43]<br>
Oct 31 12:45:56 t3   80813a7: /opt/varnish-4.0.2/sbin/varnishd'HTTP1_Session+0x467 [0x80813a7]<br>
Oct 31 12:45:56 t3   8091d24: /opt/varnish-4.0.2/sbin/varnishd'ses_req_pool_task+0x64 [0x8091d24]<br>
Oct 31 12:45:56 t3   808b79b: /opt/varnish-4.0.2/sbin/varnishd'Pool_Work_Thread+0x4bb [0x808b79b]<br>
Oct 31 12:45:56 t3   80a1fe5: /opt/varnish-4.0.2/sbin/varnishd'wrk_thread_real+0xc5 [0x80a1fe5]<br>
Oct 31 12:45:56 t3   fe43444c: /lib/libc.so.1'_thrp_setup+0x9d [0xfe43444c]<br>
Oct 31 12:45:56 t3   fe4346f0: /lib/libc.so.1'_lwp_start+0x0 [0xfe4346f0]<br>
Oct 31 12:45:56 t3 req = 8219030 {<br>
Oct 31 12:45:56 t3   sp = 8212cd0, vxid = 0,  step = R_STP_RESTART,<br>
Oct 31 12:45:56 t3   req_body = R_BODY_INIT,<br>
Oct 31 12:45:56 t3   restarts = 0, esi_level = 0<br>
Oct 31 12:45:56 t3  <br>
<br>
My VCL file is just the example basic pass-through to the local apache server as follows (comments removed):<br>
<br>
<blockquote type="CITE">
<pre>
vcl 4.0;

backend default {
    .host = "127.0.0.1";
    .port = "80";
}

sub vcl_recv {
}

sub vcl_backend_response {
}

sub vcl_deliver {
}
</pre>
</blockquote>
<br>
<table cellspacing="0" cellpadding="0" width="100%">
<tbody>
<tr>
<td>-- <br>
<table cellspacing="1" cellpadding="0" width="450">
<tbody>
<tr>
<td rowspan="4" width="60" align="left" valign="top"><img src="cid:1414729218.31302.161.camel@ademnt-dlx0001.ap.corp.ipgnetwork.com" align="bottom" border="0">
</td>
<td colspan="2" width="16"><b>Stuart Beck</b><br>
Systems Administrator<br>
<br>
<br>
</td>
</tr>
<tr>
<td width="4%" valign="top">P </td>
<td width="54%" valign="top">+61 8 8115 6649 </td>
</tr>
<tr>
<td width="4%" valign="top">E </td>
<td width="54%" valign="top"><a href="mailto:stuart.beck@mnetmobile.com">stuart.beck@mnetmobile.com</a>
</td>
</tr>
<tr>
<td width="4%" valign="top">A </td>
<td width="54%" valign="top">Level 1, 16 Anster Street,<br>
Adelaide SA 5000 </td>
</tr>
<tr>
<td colspan="4" width="0%" align="left" valign="top"><img src="cid:1414729218.31302.162.camel@ademnt-dlx0001.ap.corp.ipgnetwork.com" align="bottom" border="0">
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</body>
</html>