]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Bug 3985: 60s limit introduced by balance_on_multiple_ip breaks bad IP recovery
authorJakob Bohm <jb-debbugs@wisemo.com>
Wed, 25 Dec 2013 21:36:07 +0000 (14:36 -0700)
committerAmos Jeffries <squid3@treenet.co.nz>
Wed, 25 Dec 2013 21:36:07 +0000 (14:36 -0700)
Alternative fix if necessary would be to calculate a dynamic timeout
value based on number and timeouts for connections and forwarding.

However, as noted in the bug report the address markings are reset every
TTL when the stored RR are replaced. This meets the criteria for
periodic
retries of marked-BAD IPs. Also if all IPs are marked BAD they all get
un-marked and retried. So for now just remove the TTL hack.

src/ipcache.cc

index d12c45262ae075cc61b5d636c91804b3cd9802c5..e57f213bc8613d169ff5d9a4bb7589b8995dca1f 100644 (file)
@@ -1071,7 +1071,6 @@ ipcacheMarkBadAddr(const char *name, const Ip::Address &addr)
     if (!ia->bad_mask[k]) {
         ia->bad_mask[k] = TRUE;
         ++ia->badcount;
-        i->expires = min(squid_curtime + max((time_t)60, Config.negativeDnsTtl), i->expires);
         debugs(14, 2, "ipcacheMarkBadAddr: " << name << " " << addr );
     }