Обсуждение: Error in ALTER TABLE documentation

Поиск
Список
Период
Сортировка

Error in ALTER TABLE documentation

От
Tom Lane
Дата:
The Notes section of the ALTER TABLE reference page explains that ALTER
DROP COLUMN doesn't immediately reclaim any space, and then says:

    To force an immediate rewrite of the table, you can use VACUUM FULL,
    CLUSTER or one of the forms of ALTER TABLE that forces a rewrite. This
    results in no semantically-visible change in the table, but gets rid
    of no-longer-useful data.

Isn't this wrong in context?  That is, yes the rewriting forms of ALTER
TABLE would reclaim dead-column space, because they reconstruct every
tuple.  But VACUUM FULL and CLUSTER do not reconstruct tuples AFAIR,
so they wouldn't do a thing to reclaim space from a dropped column.
I think this reference to those two commands should be removed, and maybe
tighten the description of what's being recommended, say like so:

    To force immediate reclamation of space occupied by a dropped column,
    you can execute one of the forms of ALTER TABLE that performs a rewrite
    of the whole table.  This results in reconstructing each row with the
    dropped column replaced by a null value.

            regards, tom lane