The ctdb daemon keeps track of whether the recovery process is running
authorRonnie Sahlberg <ronniesahlberg@gmail.com>
Wed, 17 Sep 2008 04:17:41 +0000 (14:17 +1000)
committerRonnie Sahlberg <ronniesahlberg@gmail.com>
Wed, 17 Sep 2008 04:17:41 +0000 (14:17 +1000)
commit196968c552e6ebcb57389d769a4b25f42fa8bc5d
treedba2dda90df65932b14dc25c09d80b02567ea753
parent5e641ef9d6cca286061138a9680dcf2495736e8b
The ctdb daemon keeps track of whether the recovery process is running
correctly by measuring how long it was since the last successful
communication with the recovery daemon was recorded.

After a certain timeout the ctdb daemon would deem the recovery daemon
as inoperable and shut down.

If the system clock is suddenly changed forward by many (60 or more)
seconds this could cause the timeout to trigger prematurely/immediately
where ctdb would incorrectly think that more than 60 seconds had passed
since last successful communications and thus abort.

Instead of cehcking for one timeout occuring, only deem the recovery
daemon to be "down" and trigger a shutdown if communications have
timedout for three intervals in a row.
include/ctdb_private.h
server/ctdb_recover.c
server/ctdb_tunables.c