On 2014-03-17 20:51:31 -0300, Alvaro Herrera wrote:
> > I think the best way to really cleanup a table is to use something like:
> > ALTER TABLE rew ALTER COLUMN data TYPE text USING (data);
> > where text is the previous type of the column. That should trigger a
> > full table rewrite, without any finesse about tracking ctid chains.
>
> Isn't this what VACUUM FULL does?
No, it uses rewriteheap.c via cluster.c, which tries to preserve
visibility information. There's tracking/mapping of t_ctid... I am not
entirely sure how much it preserves, but I am not really hopeful.
Greetings,
Andres Freund
-- Andres Freund http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training &
Services