diff --git a/contrib/start-scripts/linux b/contrib/start-scripts/linux
index 2d36a560fa..b950cf512c 100644
--- a/contrib/start-scripts/linux
+++ b/contrib/start-scripts/linux
@@ -89,12 +89,12 @@ case $1 in
;;
stop)
echo -n "Stopping PostgreSQL: "
- su - $PGUSER -c "$PGCTL stop -I -D '$PGDATA' -s -m fast"
+ su - $PGUSER -c "$PGCTL stop -D '$PGDATA' -s -m fast"
echo "ok"
;;
restart)
echo -n "Restarting PostgreSQL: "
- su - $PGUSER -c "$PGCTL stop -I -D '$PGDATA' -s -m fast -w"
+ su - $PGUSER -c "$PGCTL stop -D '$PGDATA' -s -m fast -w"
test x"$OOM_SCORE_ADJ" != x && echo "$OOM_SCORE_ADJ" > /proc/self/oom_score_adj
test x"$OOM_ADJ" != x && echo "$OOM_ADJ" > /proc/self/oom_adj
su - $PGUSER -c "$DAEMON -D '$PGDATA' &" >>$PGLOG 2>&1
diff --git a/doc/src/sgml/ref/pg_ctl-ref.sgml b/doc/src/sgml/ref/pg_ctl-ref.sgml
index 549730da6f..3107514901 100644
--- a/doc/src/sgml/ref/pg_ctl-ref.sgml
+++ b/doc/src/sgml/ref/pg_ctl-ref.sgml
@@ -39,7 +39,6 @@ PostgreSQL documentation
options
path
-
@@ -56,7 +55,6 @@ PostgreSQL documentation
-
@@ -272,25 +270,6 @@ PostgreSQL documentation
-
-
-
-
-
- When used with the start or stop
- actions, return exit code 0 if the server is already running or
- stopped, respectively. Otherwise, an error is raised and a nonzero
- exit code is returned in these cases.
-
-
-
- This option is useful for System-V-style init scripts, which require
- the start and stop actions to be
- idempotent.
-
-
-
-
diff --git a/src/bin/pg_ctl/pg_ctl.c b/src/bin/pg_ctl/pg_ctl.c
index 14365e6079..8113e507cb 100644
--- a/src/bin/pg_ctl/pg_ctl.c
+++ b/src/bin/pg_ctl/pg_ctl.c
@@ -85,7 +85,6 @@ static char *pg_config = NULL;
static char *pgdata_opt = NULL;
static char *post_opts = NULL;
static const char *progname;
-static bool idempotent = false;
static char *log_file = NULL;
static char *exec_path = NULL;
static char *register_servicename = "PostgreSQL"; /* FIXME: + version ID? */
@@ -774,15 +773,9 @@ do_start(void)
{
old_pid = get_pgpid();
if (old_pid != 0)
- {
- if (idempotent)
- exit(0);
- else
- {
- write_stderr(_("%s: another server might be running\n"), progname);
- exit(1);
- }
- }
+ write_stderr(_("%s: another server might be running; "
+ "trying to start server anyway\n"),
+ progname);
}
read_post_opts();
@@ -866,8 +859,6 @@ do_stop(void)
if (pid == 0) /* no pid file */
{
- if (idempotent)
- exit(0);
write_stderr(_("%s: PID file \"%s\" does not exist\n"), progname, pid_file);
write_stderr(_("Is server running?\n"));
exit(1);
@@ -1771,9 +1762,9 @@ do_help(void)
printf(_("%s is a utility to initialize, start, stop, or control a PostgreSQL server.\n\n"), progname);
printf(_("Usage:\n"));
printf(_(" %s init[db] [-D DATADIR] [-s] [-o \"OPTIONS\"]\n"), progname);
- printf(_(" %s start [-w] [-t SECS] [-D DATADIR] [-s] [-I] [-l FILENAME] [-o \"OPTIONS\"]\n"), progname);
- printf(_(" %s stop [-W] [-t SECS] [-D DATADIR] [-s] [-I] [-m SHUTDOWN-MODE]\n"), progname);
- printf(_(" %s restart [-w] [-t SECS] [-D DATADIR] [-s] [-m SHUTDOWN-MODE]\n"
+ printf(_(" %s start [-w] [-t SECS] [-D DATADIR] [-s] [-l FILENAME] [-o \"OPTIONS\"]\n"), progname);
+ printf(_(" %s stop [-W] [-t SECS] [-D DATADIR] [-s] [-m SHUTDOWN-MODE]\n"), progname);
+ printf(_(" %s restart [-w] [-t SECS] [-D DATADIR] [-s] [-m SHUTDOWN-MODE]\n"
" [-o \"OPTIONS\"]\n"), progname);
printf(_(" %s reload [-D DATADIR] [-s]\n"), progname);
printf(_(" %s status [-D DATADIR]\n"), progname);
@@ -1806,8 +1797,6 @@ do_help(void)
printf(_(" -o OPTIONS command line options to pass to postgres\n"
" (PostgreSQL server executable) or initdb\n"));
printf(_(" -p PATH-TO-POSTGRES normally not necessary\n"));
- printf(_("\nOptions for start or stop:\n"));
- printf(_(" -I, --idempotent don't error if server already running or stopped\n"));
printf(_("\nOptions for stop, restart, or promote:\n"));
printf(_(" -m, --mode=MODE MODE can be \"smart\", \"fast\", or \"immediate\"\n"));
@@ -1986,7 +1975,6 @@ main(int argc, char **argv)
{"silent", no_argument, NULL, 's'},
{"timeout", required_argument, NULL, 't'},
{"core-files", no_argument, NULL, 'c'},
- {"idempotent", no_argument, NULL, 'I'},
{NULL, 0, NULL, 0}
};
@@ -2052,7 +2040,7 @@ main(int argc, char **argv)
/* process command-line options */
while (optind < argc)
{
- while ((c = getopt_long(argc, argv, "cD:Il:m:N:o:p:P:sS:t:U:wW", long_options, &option_index)) != -1)
+ while ((c = getopt_long(argc, argv, "cD:l:m:N:o:p:P:sS:t:U:wW", long_options, &option_index)) != -1)
{
switch (c)
{
@@ -2078,9 +2066,6 @@ main(int argc, char **argv)
pgdata_D);
break;
}
- case 'I':
- idempotent = true;
- break;
case 'l':
log_file = pg_strdup(optarg);
break;