On Wed, Mar 28, 2007 at 07:05:24AM -0000, Andrew - Supernews wrote:
> On 2007-03-27, David Fetter <david@fetter.org> wrote:
> > Per further discussion with Andrew of Supernews and Merlin
> > Moncure, I've added a check for compound types and moved the
> > creation of the array type from DefineRelation in
> > backend/commands/tablecmds.c to heap_create_with_catalog in
> > backend/catalog/heap.c.
>
> You've still got the usage of the relation OID and the relation
> _type_ OID reversed.
>
> The array element type that you pass to TypeCreate must be the
> _type_ OID.
The attached patch takes it down to two regression test failures, also
attached:
The first is in type_sanity, which basically doesn't understand that
complex types now have array types associated with them and thinks
they're orphan array types, so it's actually the test that's not
right.
The second is in alter_table where ALTER TABLE ... SET SCHEMA doesn't
pick up the array types associated with the tables.
Andrew at Supernews also noticed that in general, the array type
doesn't change schemas when its base type does. Is this the intended
behavior? If not, should we change it globally?
Cheers,
D
--
David Fetter <david@fetter.org> http://fetter.org/
phone: +1 415 235 3778 AIM: dfetter666
Skype: davidfetter
Remember to vote!
Consider donating to PostgreSQL: http://www.postgresql.org/about/donate