On 19 Apr 2014, at 10:26 PM, Eric Covener <cove...@gmail.com> wrote:

> Graham -- related subject brought up either in Denver or in the bug.
> It seems that when we serve a stale file while the cache is locked,
> the age headers are small instead of large. I got totally lost trying
> to track down the issue, maybe it makes sense to you?  It's almost as
> if they time of the revalidation is somehow updated early and the
> delta in the stale cache hits is based off of that.

All thundering herd does is after letting the first conditional request 
through, it serves stale data (RFC willing) until that conditional request 
comes back or a specific maximum time is reached, whichever comes first.

The most valuable piece of information in this process is the "reason" 
variable, which describes the reason why something wasn't eligible for caching. 
In httpd v2.4 the X-Cache-Detail header will give this to you, in httpd v2.2 
you'll need to log at DEBUG level to get this:

        ap_log_rerror(APLOG_MARK, APLOG_DEBUG, 0, r,
                "cache: %s not cached. Reason: %s", r->unparsed_uri,
                reason);

The questions to answer are:

- Is there stale content to serve? No stale content, no thundering herd 
protection.
- If stale content is being deleted, identify why that is. This is likely to be 
unrelated to thundering herd, but rather in other parts of mod_cache.

Regards,
Graham
--

Reply via email to