Re: Squid cannot access .... damit :)

From: Duane Wessels <wessels@dont-contact.us>
Date: Thu, 10 Sep 1998 10:17:45 -0600

"Duarte Cordeiro" writes:

>> Probably it decided your parent cache is down.
>
> and what can I do to prevent this ? :)

Try this patch:

Index: neighbors.c
===================================================================
RCS file: /surf1/CVS/squid/src/neighbors.c,v
retrieving revision 1.122.2.27
diff -w -u -r1.122.2.27 neighbors.c
--- neighbors.c 1997/11/01 01:34:19 1.122.2.27
+++ neighbors.c 1998/09/10 16:16:27
@@ -336,6 +336,20 @@
 }
 
 peer *
+getAnyParent(request_t * request)
+{
+ peer *e = NULL;
+ for (e = Peers.peers_head; e; e = e->next) {
+ if (neighborType(e, request) != PEER_PARENT)
+ continue;
+ if (!peerHTTPOkay(e, request))
+ continue;
+ break;
+ }
+ return e;
+}
+
+peer *
 getRoundRobinParent(request_t * request)
 {
     peer *e;
Index: proto.c
===================================================================
RCS file: /surf1/CVS/squid/src/Attic/proto.c,v
retrieving revision 1.96.2.20
diff -w -u -r1.96.2.20 proto.c
--- proto.c 1997/12/09 22:24:57 1.96.2.20
+++ proto.c 1998/09/10 16:15:38
@@ -242,11 +242,14 @@
         } else if ((e = getFirstUpParent(protoData->request))) {
             hierarchyNote(req, HIER_FIRSTUP_PARENT, 0, e->host);
             protoStart(protoData->fd, entry, e, req);
+ } else if ((e == getAnyParent(protoData->request)) {
+ hierarchyNote(req, HIER_DEFAULT_PARENT, 0, e->host);
+ protoStart(protoData->fd, entry, e, req);
         } else {
             hierarchyNote(req, HIER_NO_DIRECT_FAIL, 0, req->host);
             protoCantFetchObject(protoData->fd,
                 entry,
- "No peers to query "
+ "No parents can accept this request, "
                 "and the host is beyond your firewall.");
         }
         return;
Received on Thu Sep 10 1998 - 09:18:42 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:41:56 MST