From 18544c82ca4fcde863d3bd98f30d7c73e3867aac Mon Sep 17 00:00:00 2001 From: Ian Barwick Date: Tue, 31 Mar 2015 14:25:08 +0900 Subject: [PATCH] Prevent rempgrd from looping infinitely if node was not registered --- repmgrd.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/repmgrd.c b/repmgrd.c index 057d7c64..7961849f 100644 --- a/repmgrd.c +++ b/repmgrd.c @@ -287,6 +287,14 @@ main(int argc, char **argv) /* Retrieve record for this node from the local database */ node_info = get_node_info(my_local_conn, local_options.cluster_name, local_options.node); + /* No node record found - exit gracefully */ + if(node_info.node_id == -1) + { + log_err(_("No metadata record found for this node - terminating\n")); + log_notice(_("HINT: was this node registered with 'repmgr (master|standby) register'?\n")); + terminate(ERR_BAD_CONFIG); + } + log_debug("node id is %i, upstream is %i\n", node_info.node_id, node_info.upstream_node_id); /*