Re: standalone backend PANICs during recovery - Mailing list pgsql-hackers

From Tom Lane
Subject Re: standalone backend PANICs during recovery
Date
Msg-id 28712.1472565639@sss.pgh.pa.us
Whole thread Raw
In response to Re: standalone backend PANICs during recovery  (Michael Paquier <michael.paquier@gmail.com>)
Responses Re: standalone backend PANICs during recovery  (Michael Paquier <michael.paquier@gmail.com>)
List pgsql-hackers
Michael Paquier <michael.paquier@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



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Missing checks when malloc returns NULL...
Next
From: Pavel Stehule
Date:
Subject: some requests on auditing