Re: ALTER TYPE 2: skip already-provable no-work rewrites
Noah Misch <noah@leadboat.com>
From: Noah Misch <noah@leadboat.com>
To: Robert Haas <robertmhaas@gmail.com>
Cc: pgsql-hackers@postgresql.org
Date: 2011-02-06T13:58:30Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Change ALTER TABLE SET WITHOUT OIDS to rewrite the whole table to physically
- 6d1e36185208 8.4.0 cited
On Sun, Feb 06, 2011 at 08:40:44AM -0500, Noah Misch wrote: > On Sun, Feb 06, 2011 at 07:54:52AM -0500, Robert Haas wrote: > > Yeeeeeeah, that's actually a little ugly. It's actually a domain > > over a composite type, not a composite type proper, IIUC. Better > > ideas? > > There are no domains over composite types. get_rels_with_domain() finds all > relations having columns of the (scalar) domain type. It then calls > find_composite_type_dependencies to identify uses of the composite types > discovered in the previous step. > > Honestly, RELKIND_COMPOSITE_TYPE is a reasonable choice despite the technical > mismatch. One more-correct approach would be to have two arguments, a catalog > OID (pg_type or pg_class, currently) and a relkind, 0 when the catalog OID != > pg_class. Might be an improvement, albeit a minor one. Scratch that. How about classid and objid arguments, passing them to getObjectionDescription() internally? We already do something very similar in ATExecAlterColumnType for a related case.