Re: archive_command failures report confusing exit status

From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: archive_command failures report confusing exit status
Date: 2007-12-11 18:03:03
Message-ID: 200712111903.04709.peter_e@gmx.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Am Dienstag, 11. Dezember 2007 schrieb Tom Lane:
> Peter Eisentraut <peter_e(at)gmx(dot)net> writes:
> > Better patch.
>
> Doesn't this patch break the behavior that is documented in the comment?
> Specifically, the case where the restore_command dies on a signal and
> this is reported to us by the controlling shell as exitcode > 128.
> We want the archiver to die, but this patch makes it not do so.

AFAICT, the coding

WIFSIGNALED(rc) || WEXITSTATUS(rc) > 128

is simply redundant, because a signal happened exactly when WIFSIGNALED(rc) is
true.

I have tested this:

LOG: database system was shut down at 2007-12-11 17:15:43 CET
LOG: autovacuum launcher started
LOG: database system is ready to accept connections
FATAL: archive command was terminated by signal 1: Hangup
DETAIL: The archive command was "kill -1 $$".
LOG: archiver process (PID 22572) exited with exit code 1

--
Peter Eisentraut
http://developer.postgresql.org/~petere/

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrew Chernow 2007-12-11 18:09:41 Re: PGparam proposal
Previous Message Tom Lane 2007-12-11 17:45:44 Re: partitioned table query question