On Fri, Mar 02, 2007 at 06:59:50PM -0500, Tom Lane wrote:
> David Fetter <[EMAIL PROTECTED]> writes:
> > 1. In src/backend/commands/tablecmds.c, change DefineRelation as
> > follows:
> > * After the first call to heap_create_with_catalog, construct and
> > do another call to for the array type.
> I'm still not happy about the idea of doing this for every relation
> (and doing it for sequences and indexes would be the height of
> wastefulness). How about we only do it for composite types?
How about doing it for user-defined tables, views and composite types,
and skipping ?
> > * Add an appropriate pg_depend entry.
> > 2. Change RemoveRelation to reflect the above.
> You only need one of those two: either you drop by hand or you let the
> dependency machinery deal with it. Not both.
pg_depend it is, then :)
> > Does the above make sense? Have I missed anything critical?
> Ummm ... making it actually work? Possibly that just falls out, but
> I'm not sure.
> If it turns out that it does Just Work, you might take a stab at
> arrays of domains too.
I noticed something in src/backend/commands/tablecmds.c which worries
me, namely that it ignores functions and views. It should at least be
checking that the typeoid isn't in pg_proc.prorettype or
pg_proc.proargtypes, and if possible, the DECLARE section of pl/pgsql
Is there a way to do SQL at that place in the back-end, or is there
some different kind of Magick(TM) needed to access these kinds of
things at that level?
David Fetter <[EMAIL PROTECTED]> http://fetter.org/
phone: +1 415 235 3778 AIM: dfetter666
Remember to vote!
Consider donating to PostgreSQL: http://www.postgresql.org/about/donate
---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster