On Thu, 2004-07-15 at 13:16, HISADAMasaki wrote:
> Dear Simon,
>
> I've just tested pitr_v5_2.patch and got an error message
> during archiving process as follows.
>
> -- begin
> LOG: archive command="cp /usr/local/pgsql/data/pg_xlog/0000000000000000 /tmp",return code=-1
> -- end
>
> The command called in system(3) works, but it returns -1.
> system(3) can not get right exit code from its child process,
> when SIGCHLD is set as SIG_IGN.
>
> So I did following change to pgarch_Main() in pgarch.c
>
> -- line 236 ---
> - pgsignal(SIGCHLD, SIG_IGN);
>
> -- line 236 ---
> + pgsignal(SIGCHLD, SIG_DFL);
>
Thank you for testing the patch. Very much appreciated.
I was aware of the potential issues of incorrect return codes, and that
exact part of the code is the part I'm least happy with.
I'm not sure I understand why its returned -1, though I'll take you
recommendation. I've not witnessed such an issue. What system are you
running, or is it a default shell issue?
Do people think that the change is appropriate for all systems, or just
the one you're using?
Best Regards, Simon Riggs