On Fri, Jan 29, 2010 at 3:32 PM, Heikki Linnakangas <heikki.linnakan...@enterprisedb.com> wrote: > Actually, I think there's a tiny harmless bug in the server too. When it > prints the error message: > > 2010-01-18 21:08:31 UTC ()FATAL: could not restore file > "0000000200003C82000000D8" from archive: return code 65280 > > That return code is not the return code that came from the > restore_command. Ie if you do exit(200) in the command, you won't see > "return code 200", but you see the return value from system(). system() > doesn't return the exit code directly, but an encoded integer that > includes the exit code. You're supposed to call WEXITSTATUS() on it to > get the real return code. > > That only affects the error message and is harmless otherwise, but I > thought I'd mention it. I'll fix it, unless someone wants to argue that > its more useful to print the raw return value of system(), because it > might contain more information like which signal killed the process, > that you could extract from the cryptic error code using e.g WTERMSIG() > macro.
An "if" statement would seem to be in order, so that you can print out either the exit code or the signal number as appropriate. ...Robert -- Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-bugs