Re: heap_create with OID? - Mailing list pgsql-hackers

From Tom Lane
Subject Re: heap_create with OID?
Date
Msg-id 27383.962729302@sss.pgh.pa.us
Whole thread Raw
In response to Re: heap_create with OID?  (Philip Warner <pjw@rhyme.com.au>)
Responses Re: heap_create with OID?  (Bruce Momjian <pgman@candle.pha.pa.us>)
Re: heap_create with OID?  (Philip Warner <pjw@rhyme.com.au>)
List pgsql-hackers
Philip Warner <pjw@rhyme.com.au> writes:
> The way pg_dump sets the max oid is:

>     CREATE TABLE pgdump_oid (dummy int4);
>     COPY pgdump_oid WITH OIDS FROM stdin;
>     1282249 0
>     \.

> where 1282249 is the max oid you want to set.

> It's pretty crude, but I assume effective.

Ah, right.  IIRC there is a check in COPY to set the OID counter to
max(current OID counter, user-supplied OID).  So you could use this
technique to install all the BLOBs with the right OIDs, as long as
you were careful to load them in OID order: just load another row
into the temp table each time you need to advance the OID counter.
Kinda klugy, but no backend changes needed.

BTW I'd recommend making pgdump_oid a TEMP table, so that it'll go away
by itself.
        regards, tom lane


pgsql-hackers by date:

Previous
From: JanWieck@t-online.de (Jan Wieck)
Date:
Subject: Re: [GENERAL] Revised Copyright: is this more palatable?
Next
From: JanWieck@t-online.de (Jan Wieck)
Date:
Subject: Re: Statistical aggregates