diff --git a/README.md b/README.md index 324f5e8e..4e0db02b 100644 --- a/README.md +++ b/README.md @@ -1084,11 +1084,6 @@ should have been updated to reflect this: the `repmgrd` may try and promote a standby by itself. - Any other standbys attached to the old master will need to be manually instructed to point to the new master (e.g. with `repmgr standby follow`). -- You must ensure that following a server start using `pg_ctl`, log output - is not send to STDERR (the default behaviour). If logging is not configured, - we recommend setting `logging_collector=on` in `postgresql.conf` and - providing an explicit `-l/--log` setting in `repmgr.conf`'s `pg_ctl_options` - parameter. We hope to remove some of these restrictions in future versions of `repmgr`. diff --git a/repmgr.c b/repmgr.c index 6ef05cd3..1d46ff34 100644 --- a/repmgr.c +++ b/repmgr.c @@ -8423,17 +8423,12 @@ remote_command(const char *host, const char *user, const char *command, PQExpBuf } else { - /* - * When executed remotely, repmgr commands which execute pg_ctl (particularly - * `repmgr standby follow`) will see the pg_ctl command appear to fail with a - * non-zero return code when the output from the executed pg_ctl command - * has nowhere to go, even though the command actually succeeds. We'll consume an - * arbitrary amount of output and throw it away to work around this. - */ - int i = 0; - while (fgets(output, MAXLEN, fp) != NULL && i < 10) + while (fgets(output, MAXLEN, fp) != NULL) { - i++; + if (!feof(fp)) + { + break; + } } }