Re: ALTER TABLE DROP COLUMN

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: ALTER TABLE DROP COLUMN
Дата
Msg-id 200010091740.NAA11706@candle.pha.pa.us
обсуждение исходный текст
Ответ на Re: ALTER TABLE DROP COLUMN  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: ALTER TABLE DROP COLUMN
Список pgsql-hackers
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> >> Basically, move the first 100 rows to the end of the table file, then take
> >> 100 and write it to position 0, 101 to position 1, etc ... that way, at
> >> max, you are using ( tuple * 100 ) bytes of disk space, vs 2x the table
> >> size ... either method is going to lock the file for a period of time, but
> >> one is much more friendly as far as disk space is concerned *plus*, if RAM
> >> is available for this, it might even be something that the backend could
> >> use up to -S blocks of RAM to do it off disk?  If I set -S to 64meg, and
> >> the table is 24Meg in size, it could do it all in memory?
> 
> > Yes, I liked that too.
> 
> What happens if you crash partway through?
> 
> I don't think it's possible to build a crash-robust rewriting ALTER
> process that doesn't use 2X disk space: you must have all the old tuples
> AND all the new tuples down on disk simultaneously just before you
> commit.  The only way around 2X disk space is to adopt some logical
> renumbering approach to the columns, so that you can pretend the dropped
> column isn't there anymore when it really still is.

Yes, I liked the 2X disk space, and making the new tuples visible all at
once at the end.

--  Bruce Momjian                        |  http://candle.pha.pa.us pgman@candle.pha.pa.us               |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: ALTER TABLE DROP COLUMN
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: [GENERAL] Using BLOBs with PostgreSQL