From 355cd29f2dee828bfe0a4ab64f425827aba7dd3b Mon Sep 17 00:00:00 2001 From: Hideo Yamauchi Date: Wed, 17 Oct 2018 09:54:37 +0900 Subject: [PATCH] Mid: pgsql: Fix to ignore Master's re-promote. --- heartbeat/pgsql | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/heartbeat/pgsql b/heartbeat/pgsql index 380866da1..38f6ceeb7 100755 --- a/heartbeat/pgsql +++ b/heartbeat/pgsql @@ -680,6 +680,7 @@ pgsql_start() { #pgsql_promote: Promote PostgreSQL pgsql_promote() { + local output local target local rc @@ -687,6 +688,18 @@ pgsql_promote() { ocf_exit_reason "Not in a replication mode." return $OCF_ERR_CONFIGURED fi + + output=`exec_sql "${CHECK_MS_SQL}"` + if [ $? -ne 0 ]; then + report_psql_error $rc $loglevel "Can't get PostgreSQL recovery status on promote." + return $OCF_ERR_GENERIC + fi + + if [ "$output" = "f" ]; then + ocf_log info "PostgreSQL is alredy Master. Don't execute promote." + return $OCF_SUCCESS + fi + rm -f ${XLOG_NOTE_FILE}.* for target in $NODE_LIST; do