differences between parents and siblings.
- No longer starts to swap out objects which are known to be above
the maximum allowed size.
+ - allow-miss cache_peer option disabling the use of "only-if-cached".
+ Meant to be used in conjunction with icp_hit_stale.
Changes to Squid-2.4.DEVEL2 ():
/*
- * $Id: cache_cf.cc,v 1.338 2000/05/02 18:32:40 hno Exp $
+ * $Id: cache_cf.cc,v 1.339 2000/05/02 18:51:50 hno Exp $
*
* DEBUG: section 3 Configuration File Parsing
* AUTHOR: Harvest Derived
} else if (!strncasecmp(token, "digest-url=", 11)) {
p->digest_url = xstrdup(token + 11);
#endif
+ } else if (!strcasecmp(token, "allow-miss")) {
+ p->options.allow_miss = 1;
} else {
debug(3, 0) ("parse_peer: token='%s'\n", token);
self_destruct();
#
-# $Id: cf.data.pre,v 1.169 2000/05/02 18:35:09 hno Exp $
+# $Id: cf.data.pre,v 1.170 2000/05/02 18:51:51 hno Exp $
#
#
# SQUID Internet Object Cache http://squid.nlanr.net/Squid/
login=user:password
connect-timeout=nn
digest-url=url
+ allow-miss
use 'proxy-only' to specify that objects fetched
from this cache should not be saved locally.
the specified URL rather than the Squid default
location.
+ use 'allow-miss' to disable Squid's use of only-if-cached
+ when forwarding requests to siblings. This is primarily
+ useful when icp_hit_stale is used by the sibling. To
+ extensive use of this option may result in forwarding
+ loops, and you should avoid having two-way peerings
+ with this option. (for example to deny peer usage on
+ requests from peer by denying cache_peer_access if the
+ source is a peer)
+
NOTE: non-ICP neighbors must be specified as 'parent'.
cache_peer hostname type 3128 3130
DOC_END
-
NAME: cache_peer_domain cache_host_domain
TYPE: hostdomain
DEFAULT: none
/*
- * $Id: http.cc,v 1.357 2000/03/25 04:58:39 wessels Exp $
+ * $Id: http.cc,v 1.358 2000/05/02 18:51:51 hno Exp $
*
* DEBUG: section 11 Hypertext Transfer Protocol (HTTP)
* AUTHOR: Harvest Derived
else if ((double) p->stats.n_keepalives_recv / (double) p->stats.n_keepalives_sent > 0.50)
httpState->flags.keepalive = 1;
if (httpState->peer)
- if (neighborType(httpState->peer, httpState->request) == PEER_SIBLING)
+ if (neighborType(httpState->peer, httpState->request) == PEER_SIBLING &&
+ !httpState->peer->options.allow_miss)
httpState->flags.only_if_cached = 1;
memBufDefInit(&mb);
httpBuildRequestPrefix(req,
/*
- * $Id: structs.h,v 1.319 2000/05/02 18:35:09 hno Exp $
+ * $Id: structs.h,v 1.320 2000/05/02 18:51:51 hno Exp $
*
*
* SQUID Internet Object Cache http://squid.nlanr.net/Squid/
#if DELAY_POOLS
unsigned int no_delay:1;
#endif
+ unsigned int allow_miss:1;
} options;
int weight;
struct {