[pgpool-committers: 2862] pgpool: Fixing the problem in new watchdog interlocking mechanism.

Muhammad Usama m.usama at gmail.com
Wed Dec 9 04:58:43 JST 2015

Fixing the problem in new watchdog interlocking mechanism.

when the watchdog is enabled on pgpool-II, failover() function is required to
make sure that the pgpool-II is a lock holder node before executing the user
provided failover command. Since only one node in watchdog cluster can become a
lock holder at any time, the mechanism ensures that these commands get executed
only on a single pgpool-II node. But the respective if statements in failover()
function was not properly checking for the current node to be a lock holder and
consequently at failover multiple pgpool-II nodes were executing the
failover/failback command.



Modified Files
src/include/watchdog/wd_ipc_defines.h |   17 ++++++++++++-----
src/main/pgpool_main.c                |    6 +++---
src/watchdog/watchdog.c               |    6 +++---
src/watchdog/wd_commands.c            |   12 ++++++------
4 files changed, 24 insertions(+), 17 deletions(-)

More information about the pgpool-committers mailing list