]> git.ipfire.org Git - thirdparty/squid.git/commit
Automatically revive hopeless kids on reconfigure and after a timeout.
authorAlex Rousskov <rousskov@measurement-factory.com>
Wed, 2 Aug 2017 22:13:27 +0000 (16:13 -0600)
committerAlex Rousskov <rousskov@measurement-factory.com>
Thu, 3 Aug 2017 00:06:11 +0000 (18:06 -0600)
commit00e2479d3e0a975a7cb6e40200d9a3a460892119
treeb0f5804f072736d705767dd23a911fe274e0dc4c
parentec4568e300a7e6e2bf555df68354f32f05d11382
Automatically revive hopeless kids on reconfigure and after a timeout.

Squid declares kids with "repeated, frequent failures" as hopeless.
Hopeless kids were not automatically restarted. In the absence of
automated recovery, admins were forced to restart the whole Squid
instance (after fixing the underlying problem that led to those kid
failures). Squid instance restarts hurt users.

In many cases, the underlying kid-killing problem is temporary, and
Squid can eventually fully recover without any admin involvement.

Squid now automatically restarts a hopeless kid after a configurable
downtime (a new hopeless_kid_revival_delay directive with a 60 minute
default value).

Also restart all hopeless kids upon receiving a reconfiguration signal.

Also avoid sending signals to non-running kids, fixing an old minor bug.
src/SquidConfig.h
src/cf.data.pre
src/ipc/Kid.cc
src/ipc/Kid.h
src/ipc/Kids.cc
src/ipc/Kids.h
src/main.cc
src/tools.cc