Squid 3 reloading makes it stop serving requests

cachePROXYsquid

So, we use Squid 3 here (3.0.STABLE8-3+lenny4), pretty standard configuration (no dansguardian or similar) + NTLM authentication with LDAP background, circa 1000 users on a busy day, and our acls reference some external files (allowed/blocked sites/ip addresses).

On Squid 2.X we used to be capable of reloading it's configuration (to add or sites or addresses to rules, etc) and squid would not stop serving during the reload. Since we changed to 3.0, that seems to be impossible: everytime we use reload (or -k reconfigure) it stop serving requests for as long as 2 minutes, and clients receive a Configured proxy is not accepting connections message.

I checked the documentation and got nothing about it, does anyone else suffer from this problem or is it a isolated case on my setup? Also, if you have Squid 3.0 and doesn't suffer from this problem, how is your squid configured?

Best Answer

This page seems to suggest that this is known a feature they are working on.

Squid currently performs reconfigure by way of a simulated shutdown, re-loading the config files, and restarting.

This causes many issues which are visible:

  • ports fully closed for a duration
  • memory leaks for SSL contexts, and other in-use objects
  • loss of information on in-transit requests
  • INVALID URL errors when protocol info disappears.
  • request denials when ACLs being checked disappear.

A thread from the maillist archive suggests that if you decrease the number of helpers (auth and other) it will reload faster.