From: | Hannu Krosing <hannu(at)tm(dot)ee> |
---|---|
To: | Andreas Pflug <pgadmin(at)pse-consulting(dot)de> |
Cc: | pg(at)fastcrypt(dot)com, Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>, Neil Conway <neilc(at)samurai(dot)com>, Peter Eisentraut <peter_e(at)gmx(dot)net>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: ALTER COLUMN/logical column position |
Date: | 2003-11-20 07:58:31 |
Message-ID: | 1069315111.3201.99.camel@fuji.krosing.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Andreas Pflug kirjutas N, 20.11.2003 kell 01:38:
> Second, column type changes needing a nontrivial cast function should be
> implemented in a way that preserve attnum. This could be done like this:
> - decompile dependent objects, and memorize them for later recreation
> - ADD tmpCol, UPDATE tmpCol=col::newtype, DROP old column, cascading to
> dependent objects, RENAME tmpCol (known stuff)
> - restore old attnum, which is a simple UPDATE to pg_attribute at this stage
and suddenly your table is broken, as you can't retrieve the tmpCol when
the attnum points to the dropped old column which has data in the format
for old type ...
the whole point of separating attnum and attpos is that attnum is used
internally to retrieve the data and you can't change it by just
UPDATEing pg_attribute.
---------------
Hannu
From | Date | Subject | |
---|---|---|---|
Next Message | Shridhar Daithankar | 2003-11-20 08:01:13 | Re: RPM building fun |
Previous Message | David Fetter | 2003-11-20 07:39:53 | Re: RPM building fun |