From c72940a2e0862c180e764b72b76251b8a25eada9 Mon Sep 17 00:00:00 2001 From: Amos Jeffries Date: Sun, 7 Nov 2010 03:04:54 -0700 Subject: [PATCH] Author: Alex Rousskov Bug 3091: Bypassed ICAP errors are not counted as service failures. Notify ICAP service about the failure even if we can bypass it. Otherwise, a failing service may continue to stay "up", preventing Squid from using a healthy backup alternative in a service_set (or bypassing ICAP completeley). --- src/adaptation/icap/ModXact.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/adaptation/icap/ModXact.cc b/src/adaptation/icap/ModXact.cc index eaef7a51bb..2d5093e6c8 100644 --- a/src/adaptation/icap/ModXact.cc +++ b/src/adaptation/icap/ModXact.cc @@ -639,6 +639,8 @@ void Adaptation::Icap::ModXact::bypassFailure() if (!doneWithIo()) debugs(93, 7, HERE << "Warning: bypass failed to stop I/O" << status()); } + + service().noteFailure(); // we are bypassing, but this is still a failure } void Adaptation::Icap::ModXact::disableBypass(const char *reason, bool includingGroupBypass) -- 2.47.2