﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
6199	Avoid cache stampedes	Jeremy Dunck	nobody	"From the patch:
{{{
+    Avoids cache stampeding by missing on *one* request prior to actual
+    expiration.  That single missed requestor then refills the cache prior to
+    real expiration.  All other requestors still get hits.
+    
+    Adapted from MintCache from gfranxman:
+    http://www.djangosnippets.org/snippets/155/
}}}

This is also similar to mnot's stale-while-revalidate:
http://www.mnot.net/blog/2007/12/12/stale

The cache wrapper works with any backend, but does have a 2% access overhead.  Additionally, rather than storing exactly what is asked in the backend, additional bookkeeping data is stored in a tuple alongside the original object.

"		closed	Core (Cache system)	dev		wontfix	performance scalability cache	jdunck@… sw+django@…	Accepted	1	0	0	1	0	0
