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

Modified:
   trunk/varnish-cache/bin/varnishd/cache_response.c
Log:
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 @@
 	else
 		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