Re: heap_create with OID?
От | Bruce Momjian |
---|---|
Тема | Re: heap_create with OID? |
Дата | |
Msg-id | 200007041658.MAA01557@candle.pha.pa.us обсуждение исходный текст |
Ответ на | Re: heap_create with OID? (Tom Lane <tgl@sss.pgh.pa.us>) |
Список | 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. Done. Renamed pgdump_oid to pg_dump_oid too. We didn't have TEMPORARY tables at the time I did this. The temporary allows multiple concurrent loads because there is no table name conflict. -- Bruce Momjian | http://www.op.net/~candle pgman@candle.pha.pa.us | (610) 853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania19026
В списке pgsql-hackers по дате отправления: