r1142 - trunk/varnish-cache/bin/varnishd

des at projects.linpro.no des at projects.linpro.no
Fri Oct 6 14:58:04 CEST 2006

Author: des
Date: 2006-10-06 14:58:04 +0200 (Fri, 06 Oct 2006)
New Revision: 1142

The delivered document's age should be computed relative to the time of
the response, not the time of the request.  If the document was not in
cache and the backend took a long time to respond, the document would
end up with a negative computed age, which when printed with %u would
appear as a large positive number (a few seconds short of either 2^32
or 2^64 depending on the size of time_t).

Modified: trunk/varnish-cache/bin/varnishd/cache_response.c
--- trunk/varnish-cache/bin/varnishd/cache_response.c	2006-10-06 11:04:01 UTC (rev 1141)
+++ trunk/varnish-cache/bin/varnishd/cache_response.c	2006-10-06 12:58:04 UTC (rev 1142)
@@ -234,7 +234,7 @@
 		http_PrintfHeader(sp->wrk, sp->fd, sp->http, "X-Varnish: %u", sp->xid);
 	http_PrintfHeader(sp->wrk, sp->fd, sp->http, "Age: %u",
-	    sp->obj->age + sp->t_req.tv_sec - sp->obj->entered);
+	    sp->obj->age + sp->t_resp.tv_sec - sp->obj->entered);
 	http_SetHeader(sp->wrk, sp->fd, sp->http, "Via: 1.1 varnish");
 	if (sp->doclose != NULL)
 		http_SetHeader(sp->wrk, sp->fd, sp->http, "Connection: close");

More information about the varnish-commit mailing list