"Tom Dunstan" <[EMAIL PROTECTED]> writes: > 1 - We space the values out as evenly as we can across the 65000ish > range and allow people to delete, insert and append, but not reorder. > If they do the above gratuitously we might have to do a rewrite, but > they'll have to get fairly busy to do it. Rewrite would be required > for reorderings.
> 2- We totally give up the idea of storing a value on disk that is > directly comparable (other than equality), and simply number from zero > up, using that number to index into an array (or use as syscache key > or whatever) containing the real ordering information. We can then > reorder or do any other operations to our heart's content. > I'm actually favouring option 2 - I'm not ... it strikes me that it will add implementation complexity and runtime overhead for a feature that two days ago we didn't think we needed at all, and IMHO one we still shouldn't be thinking to expend a lot of work on. I like #1 with no rewrite support. That strikes me as covering 99% of the requirements with 10% of the work. Further, as already noted, if you do have to rewrite then a series of manual ALTER COLUMN TYPE operations would probably be a *better* answer than a monolithic implementation, because of the locking problems involved in doing it in one transaction. (Oh, and don't forget the disk space problem: double the disk space for every table involved, simultaneously.) regards, tom lane PS: no, I do *not* want to hear any proposals for ALTER TYPE CONCURRENTLY ;-) -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers