diff --git a/doc/repmgr-standby-promote.xml b/doc/repmgr-standby-promote.xml index 3f90b965..04e103f3 100644 --- a/doc/repmgr-standby-promote.xml +++ b/doc/repmgr-standby-promote.xml @@ -170,6 +170,42 @@ + + + + + + Ignore warnings and continue anyway. + + + This option is relevant in the following situations if was specified: + + + + If one or more sibling nodes was not reachable via SSH, the standby will be promoted anyway. + + + + + If the promotion candidate has insufficient free walsenders to accomodate the standbys which will + be attached to it, the standby will be promoted anyway. + + + + + If replication slots are in use but the promotion candidate has insufficient free replication slots + to accomodate the standbys which will be attached to it, the standby will be promoted anyway. + + + + + + Note that if the / option is used when any of the above + situations is encountered, the onus is on the user to manually resolve any resulting issues. + + + + diff --git a/repmgr-action-standby.c b/repmgr-action-standby.c index 1920df71..130168af 100644 --- a/repmgr-action-standby.c +++ b/repmgr-action-standby.c @@ -2388,7 +2388,7 @@ do_standby_promote(void) */ if (check_free_wal_senders(available_wal_senders, &sibling_nodes_stats, &dry_run_success) == false) { - if (runtime_options.dry_run == false) + if (runtime_options.dry_run == false || runtime_options.force == false) { PQfinish(local_conn); exit(ERR_BAD_CONFIG); @@ -2402,7 +2402,7 @@ do_standby_promote(void) */ if (check_free_slots(&local_node_record, &sibling_nodes_stats, &dry_run_success) == false) { - if (runtime_options.dry_run == false) + if (runtime_options.dry_run == false || runtime_options.force == false) { PQfinish(local_conn); exit(ERR_BAD_CONFIG); @@ -2503,7 +2503,7 @@ _do_standby_promote_internal(PGconn *conn) /* * Promote standby to primary. * - * `pg_ctl promote` returns immediately and (prior to 10.0) has no -w + * "pg_ctl promote: returns immediately and (prior to 10.0) has no -w * option so we can't be sure when or if the promotion completes. For now * we'll poll the server until the default timeout (60 seconds) * @@ -8581,6 +8581,10 @@ do_standby_help(void) puts(""); printf(_(" \"standby promote\" promotes a standby node to primary.\n")); puts(""); + printf(_(" --dry-run perform checks etc. but don't actually promote the node\n")); + printf(_(" -F, --force ignore warnings and continue anyway\n")); + printf(_(" --siblings-follow have other standbys follow new primary\n")); + puts(""); printf(_("STANDBY FOLLOW\n")); puts("");