Re: Re: [Pg-migrator-general] Composite types break pg_migrated tables

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Peter Eisentraut <peter_e(at)gmx(dot)net>, pgsql-hackers(at)postgresql(dot)org, Andrew Dunstan <andrew(at)dunslane(dot)net>, Jeff <threshar(at)threshar(dot)is-a-geek(dot)com>
Subject: Re: Re: [Pg-migrator-general] Composite types break pg_migrated tables
Date: 2009-08-07 14:25:29
Message-ID: 20214.1249655129@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Bruce Momjian <bruce(at)momjian(dot)us> writes:
> Peter Eisentraut wrote:
>> That might be a bit excessive. As I understand it, arrays of built-in types
>> (e.g., int[]) should work fine. I suspect the majority of uses of arrays will
>> be with built-in types, so allowing that would help a significant portion of
>> installations.

> Agreed. I realized that last night, and have modified pg_migrator to
> test FirstNormalObjectId.

That's really the wrong thing. It's safe to assume OIDs below 10000
are portable across versions, because for them not to be would require
someone to have changed a hand assignment. However, OIDs between 10000
and 16K are assigned on-the-fly by initdb, and those are *not* likely
to be portable across versions. As an example, the rowtype for
pg_statistic has slightly different OIDs in 8.3 and 8.4. So if you
allow someone to port a database that is using a system catalog's
rowtype, it will fail. Admittedly that's not a real likely scenario,
but if you're going to have a check it should be accurate.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Sam Mason 2009-08-07 14:29:06 Re: Table and Index compression
Previous Message Boszormenyi Zoltan 2009-08-07 14:23:39 Re: ECPG support for struct in INTO list