diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c index 3cb866f530..5452ae139a 100644 --- a/src/backend/access/transam/xlog.c +++ b/src/backend/access/transam/xlog.c @@ -9906,19 +9906,7 @@ CheckForStandbyTrigger(void) fast_promote = false; } - /* - * We only look for fast promote via the pg_ctl promote option. - * It would be possible to extend trigger file support for the - * fast promotion option but that wouldn't be backwards compatible - * anyway and we're looking to focus further work on the promote - * option as the right way to signal end of recovery. - */ - if (fast_promote) - ereport(LOG, - (errmsg("received fast promote request"))); - else - ereport(LOG, - (errmsg("received promote request"))); + ereport(LOG, (errmsg("received promote request"))); ResetPromoteTriggered(); triggered = true; @@ -9934,6 +9922,7 @@ CheckForStandbyTrigger(void) (errmsg("trigger file found: %s", TriggerFile))); unlink(TriggerFile); triggered = true; + fast_promote = true; return true; } return false; diff --git a/src/bin/pg_ctl/pg_ctl.c b/src/bin/pg_ctl/pg_ctl.c index a4e7922d68..14365e6079 100644 --- a/src/bin/pg_ctl/pg_ctl.c +++ b/src/bin/pg_ctl/pg_ctl.c @@ -1107,13 +1107,12 @@ do_promote(void) } /* - * Use two different kinds of promotion file so we can understand - * the difference between smart and fast promotion. + * For 9.3 onwards, use fast promotion as the default option. + * Promotion with a full checkpoint is still possible by writing + * a file called "promote", e.g. + * snprintf(promote_file, MAXPGPATH, "%s/promote", pg_data); */ - if (shutdown_mode >= FAST_MODE) - snprintf(promote_file, MAXPGPATH, "%s/fast_promote", pg_data); - else - snprintf(promote_file, MAXPGPATH, "%s/promote", pg_data); + snprintf(promote_file, MAXPGPATH, "%s/fast_promote", pg_data); if ((prmfile = fopen(promote_file, "w")) == NULL) { @@ -1778,7 +1777,7 @@ do_help(void) " [-o \"OPTIONS\"]\n"), progname); printf(_(" %s reload [-D DATADIR] [-s]\n"), progname); printf(_(" %s status [-D DATADIR]\n"), progname); - printf(_(" %s promote [-D DATADIR] [-s] [-m PROMOTION-MODE]\n"), progname); + printf(_(" %s promote [-D DATADIR] [-s]\n"), progname); printf(_(" %s kill SIGNALNAME PID\n"), progname); #if defined(WIN32) || defined(__CYGWIN__) printf(_(" %s register [-N SERVICENAME] [-U USERNAME] [-P PASSWORD] [-D DATADIR]\n" @@ -1817,10 +1816,6 @@ do_help(void) printf(_(" fast quit directly, with proper shutdown\n")); printf(_(" immediate quit without complete shutdown; will lead to recovery on restart\n")); - printf(_("\nPromotion modes are:\n")); - printf(_(" smart promote after performing a checkpoint\n")); - printf(_(" fast promote quickly without waiting for checkpoint completion\n")); - printf(_("\nAllowed signal names for kill:\n")); printf(" ABRT HUP INT QUIT TERM USR1 USR2\n");