Skip site navigation (1) Skip section navigation (2)

Re: Avoiding rewrite in ALTER TABLE ALTER TYPE

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Noah Misch <noah(at)leadboat(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Avoiding rewrite in ALTER TABLE ALTER TYPE
Date: 2010-12-29 16:16:23
Message-ID: 11860.1293639383@sss.pgh.pa.us (view raw or flat)
Thread:
Lists: pgsql-hackers
Noah Misch <noah(at)leadboat(dot)com> writes:
> ALTER TABLE ALTER TYPE always rewrites the table heap and its indexes.  In some
> cases, we can determine that doing so is unhelpful, and that the conversion
> shall always succeed:
> I wish to replace table rewrites with table verification scans where possible,
> then skip those verification scans where possible.

This has been discussed before; have you read the previous threads?

I really really dislike the notion of a "verification scan": it's
basically work that is going to be useless if it fails.  I think your
argument that it will usually fail quickly is quite unconvincing, and in
any case the situations where it is useful at all are too thin on the
ground to be worth the code space to implement it.  It seems sufficient
to me to skip the rewrite in cases of provable binary compatibility, with
possibly an extra check for "safe" changes of typmod.  With respect to
the latter, I agree a type-specific function to compare the typmods
would be the way to go, although "exemptor" seems a pretty badly chosen
name for it.

			regards, tom lane

In response to

Responses

pgsql-hackers by date

Next:From: Tom LaneDate: 2010-12-29 17:14:03
Subject: Re: Avoiding rewrite in ALTER TABLE ALTER TYPE
Previous:From: Robert HaasDate: 2010-12-29 15:56:39
Subject: Re: Avoiding rewrite in ALTER TABLE ALTER TYPE

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group