
martin at varnish-cache
Jul 19, 2012, 1:41 AM
Post #1 of 1
(47 views)
Permalink
|
|
[3.0] d1ba932 Do not consider busy objects as candidates in EXP_NukeOne.
|
|
commit d1ba9327229e1b0a3cec78ad4071e9796f6b70a8 Author: Martin Blix Grydeland <martin [at] varnish-software> Date: Wed Jul 4 13:25:08 2012 +0200 Do not consider busy objects as candidates in EXP_NukeOne. An attempt to nuke a busy object will end in assertion. diff --git a/bin/varnishd/cache_expire.c b/bin/varnishd/cache_expire.c index 7fa48da..15482bf 100644 --- a/bin/varnishd/cache_expire.c +++ b/bin/varnishd/cache_expire.c @@ -431,9 +431,10 @@ EXP_NukeOne(struct worker *w, struct lru *lru) /* * It wont release any space if we cannot release the last * reference, besides, if somebody else has a reference, - * it's a bad idea to nuke this object anyway. + * it's a bad idea to nuke this object anyway. Also do not + * touch busy objects. */ - if (oc->refcnt == 1) + if (oc->refcnt == 1 && !(oc->flags & OC_F_BUSY)) break; } if (oc != NULL) { _______________________________________________ varnish-commit mailing list varnish-commit [at] varnish-cache https://www.varnish-cache.org/lists/mailman/listinfo/varnish-commit
|