Thread: dumpBlobs(): could not open large object: ERROR: inv_open: large object 23312462 not found

version(): PostgreSQL 7.2.1 on i686-pc-linux-gnu, compiled by GCC 2.96
redhat 7.3

i've made a backup script, the meat and potatos of which are:

/usr/bin/pg_dump -Fc --blobs -f $dumpdir/$file $dbname

had been working, but recently:
 pg_dump: dumpBlobs(): could not open large object: ERROR:  inv_open: large
object 23312462 not found

for a variety of oids, not NULL or oid 0; over the last few days: 23170697
23208208 23240773 23312462 23318306 23356032 23356728 23495969 23554296
23578064

vacuums okay.

is this from deleting large objects without deleting the oid in a table or
vice versa? pgdump exits non-zero which i guess means the backup is
incomplete.


"Tim Lynch" <admin+pgsqladmin@thirdage.com> writes:
> i've made a backup script, the meat and potatos of which are:
> /usr/bin/pg_dump -Fc --blobs -f $dumpdir/$file $dbname
> had been working, but recently:
>  pg_dump: dumpBlobs(): could not open large object: ERROR:  inv_open: large
> object 23312462 not found

> for a variety of oids, not NULL or oid 0; over the last few days: 23170697
> 23208208 23240773 23312462 23318306 23356032 23356728 23495969 23554296
> 23578064

After looking at the code, the most plausible explanation seems to be
that the index on pg_largeobject is broken.  Try reindexing
pg_largeobject.  (You'l likely need to do this in single-user mode;
read the REINDEX man page carefully.)

7.2.1 is by no means current, btw.  I recommend an update to 7.2.4 at
least, or 7.3 if you can.

            regards, tom lane

Re: dumpBlobs(): could not open large object: ERROR:

From
Robert Treat
Date:
It sounds like your binary files may have been deleted. The output of
\lo_list in psql should tell you what valid large objects you have.

Robert Treat

On Wed, 2003-02-19 at 14:02, Tim Lynch wrote:
> version(): PostgreSQL 7.2.1 on i686-pc-linux-gnu, compiled by GCC 2.96
> redhat 7.3
>
> i've made a backup script, the meat and potatos of which are:
>
> /usr/bin/pg_dump -Fc --blobs -f $dumpdir/$file $dbname
>
> had been working, but recently:
>  pg_dump: dumpBlobs(): could not open large object: ERROR:  inv_open: large
> object 23312462 not found
>
> for a variety of oids, not NULL or oid 0; over the last few days: 23170697
> 23208208 23240773 23312462 23318306 23356032 23356728 23495969 23554296
> 23578064
>
> vacuums okay.
>
> is this from deleting large objects without deleting the oid in a table or
> vice versa? pgdump exits non-zero which i guess means the backup is
> incomplete.
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: you can get off all lists at once with the unregister command
>     (send "unregister YourEmailAddressHere" to majordomo@postgresql.org)