On Sat, 2013-11-30 at 15:56 -0800, Peter Geoghegan wrote:
> On Sun, Nov 24, 2013 at 5:11 AM, Peter Eisentraut <peter_e@gmx.net> wrote:
> > How about this?
>
> Hmm. You say:
>
> + If the command returns a nonzero exit status then a warning log
> + message will be written. An exception is that if the command was
> + terminated by a signal or an error by the shell (such as command not
> + found), a fatal error will be raised.
>
> But in the case of the archiver, in contrast to the startup process,
> this isn't really a big deal. It'll just pick up where it left off.
> Whereas the reaper code shuts down the system if this happens in the
> startup process. In my opinion that's a distinction that bears
> emphasizing.
That snippet you quote is about archive_cleanup_command. My patch
doesn't touch archive_command at all.
The current documentation about archive_command contains
<para> It is important that the archive command return zero exit status if and only if it succeeds. Upon getting
azero result, <productname>PostgreSQL</> will assume that the file has been successfully archived, and will remove
orrecycle it. However, a nonzero status tells <productname>PostgreSQL</> that the file was not archived; it will
tryagain periodically until it succeeds. </para>
which I think addresses your point.