Re: ALTER command reworks

Alvaro Herrera <alvherre@2ndquadrant.com>

From: Alvaro Herrera <alvherre@2ndquadrant.com>
To: Kohei KaiGai <kaigai@kaigai.gr.jp>
Cc: Robert Haas <robertmhaas@gmail.com>, Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2012-10-02T14:19:17Z
Lists: pgsql-hackers

Attachments

Excerpts from Alvaro Herrera's message of vie sep 28 18:17:32 -0300 2012:
> Excerpts from Kohei KaiGai's message of lun sep 10 08:08:32 -0300 2012:
> 
> > As attached, I split off the original one into three portions; for set-schema,
> > set-owner and rename-to. Please apply them in order of patch filename.
> 
> Hmm, in the first patch, it seems to me we can simplify
> AlterObjectNamespace's signature: instead of passing all the details of
> the object class (cache Ids and attribute numbers and so on), just do
> 
> AlterObjectNamespace(catalog-containing-object, objectId, newNamespaceOid)

Like in the attached reworked version, in which I renamed the function
to AlterObjectNamespace_internal because the other name seemed a bit
wrong in the fact of the existing AlterObjectNamespace_oid.

I also made the ALTER FUNCTION case go through
AlterObjectNamespace_internal; it seems pointless to have a separate
code path to go through when the generic one does just fine (also, this
makes functions identical to collations in implementation).  That's one
less hook point for sepgsql, I guess.

-- 
Álvaro Herrera                http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services