Michael Paquier <michael.paqu...@gmail.com> writes:
> Does the attached suit better then?

Thinking about it some more ... what we actually need to prevent, AFAICS,
is standby_mode becoming true in a standalone backend.  If you don't set
that, then the process will do PITR recovery, but I'm not aware that there
is any problem with running that standalone, and maybe it's useful to
allow it for debugging purposes.  So I'm thinking more like

        /*
         * Check for recovery control file, and if so set up state for offline
         * recovery
         */
        readRecoveryCommandFile();

+       /*
+        * We don't support standby_mode in standalone backends; that
+        * requires other processes such as WAL receivers to be alive.
+        */
+       if (StandbyModeRequested && !IsUnderPostmaster)
+               ereport(FATAL, ...);
+
        /*
         * Save archive_cleanup_command in shared memory so that other processes
         * can see it.
         */

or we could put the check near the bottom of readRecoveryCommandFile.
Not sure which placement is clearer.

                        regards, tom lane


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to