r5538 - trunk/varnish-cache/bin/varnishd

phk at varnish-cache.org phk at varnish-cache.org
Thu Nov 11 12:31:54 CET 2010


Author: phk
Date: 2010-11-11 12:31:54 +0100 (Thu, 11 Nov 2010)
New Revision: 5538

Modified:
   trunk/varnish-cache/bin/varnishd/cache_hash.c
Log:
Polishing



Modified: trunk/varnish-cache/bin/varnishd/cache_hash.c
===================================================================
--- trunk/varnish-cache/bin/varnishd/cache_hash.c	2010-11-11 11:31:35 UTC (rev 5537)
+++ trunk/varnish-cache/bin/varnishd/cache_hash.c	2010-11-11 11:31:54 UTC (rev 5538)
@@ -365,7 +365,8 @@
 			SMP_Fixup(sp, oh, oc);
 
 		if (oc->flags & OC_F_BUSY) {
-			busy_oc = oc;
+			if (!sp->hash_ignore_busy)
+				busy_oc = oc;
 			continue;
 		}
 
@@ -402,9 +403,8 @@
 	if (oc == NULL			/* We found no live object */
 	    && grace_oc != NULL		/* There is a grace candidate */
 	    && (busy_oc != NULL		/* Somebody else is already busy */
-	    || !VDI_Healthy(sp->t_req, sp->director, (uintptr_t)oh))
+	    || !VDI_Healthy(sp->t_req, sp->director, (uintptr_t)oh))) {
 					/* Or it is impossible to fetch */
-	    && !sp->hash_ignore_busy) { /* And we've not been told to ignore busy */
 		o = grace_oc->obj;
 		CHECK_OBJ_NOTNULL(o, OBJECT_MAGIC);
 		if (o->ttl + HSH_Grace(sp->grace) >= sp->t_req)
@@ -427,7 +427,7 @@
 		return (oc);
 	}
 
-	if (busy_oc != NULL && !sp->hash_ignore_busy) {
+	if (busy_oc != NULL) {
 		/* There are one or more busy objects, wait for them */
 		if (sp->esis == 0)
 			VTAILQ_INSERT_TAIL(&oh->waitinglist, sp, list);
@@ -781,6 +781,7 @@
 	int ac;
 	const struct hash_slinger *hp;
 
+	ASSERT_MGT();
 	av = ParseArgv(h_arg, ARGV_COMMA);
 	AN(av);
 




More information about the varnish-commit mailing list