Thread: Re: error codes when running pg_dumpall from a perl script.

Re: error codes when running pg_dumpall from a perl script.

From
Allan Engelhardt
Date:
You'll want to ask on the perl groups, but briefly you get an illegal seek when your command writes to the error file
descriptor:

    % perl -e '`echo hi 1>&2` or warn "Oops: $! $?";'
    hi
    Oops: Illegal seek 0 at -e line 1.

It's a perl feature, not a bug ;-)  Try

    % man perlop

for self therapy...

Allan.

Simon Crute wrote:

> Hi,
>   If this was better posed in a different postgres group, please let me
> know.
>
>   I'm having problems when running pg_dumpall from a perl script.
>
> Here's the line that's executing the backup.
>
> `pg_dumpall -o |bzip2 -z -c > $os_bkup_loc/byt_pgdump_full.bz2` or warn
> "Error while running probably all OK. $! \n";
>
> During the run the following error is reported
>
> "Error while running probably all OK.. Illegal seek "
> i.e. the error code reported by $! is "Illegal seek"
>
> I've ran a backup manually, and there are no error messages.
> When running the backup from with a perl script, (but not sending the output
> through bzip2) the error still occurs, but diffing the output of that with
> the output of pg_dumpall -o when ran from the command line and there's only
> two minor differences (which seem to be within some objectIDs. I can post
> that diff if anyone thinks it may help.
>
> the environment variables PGUSER and PGPASSWORD are set earlier in the
> script.
> I've searched the archives of the mail lists, and found no references to
> illegal seeks WRT running pg_dump.
>
> Anyone got any clues ?
>
> --
> Simon Crute

Re: error codes when running pg_dumpall from a perl script.

From
"Simon Crute"
Date:
"Allan Engelhardt" <allane@cybaea.com> wrote in message
news:3BC5F048.278EE105@cybaea.com...
> You'll want to ask on the perl groups, but briefly you get an illegal seek
when your command writes to the error file descriptor:
>
>     % perl -e '`echo hi 1>&2` or warn "Oops: $! $?";'
>     hi
>     Oops: Illegal seek 0 at -e line 1.
>
> It's a perl feature, not a bug ;-)  Try

Ahh.
Thanks for that.