Re: remove flatfiles.c - Mailing list pgsql-hackers

From Alvaro Herrera
Subject Re: remove flatfiles.c
Date
Msg-id 20090902012933.GC7243@alvh.no-ip.org
Whole thread Raw
In response to Re: remove flatfiles.c  (Ron Mayer <rm_pg@cheapcomplexdevices.com>)
Responses Re: remove flatfiles.c
List pgsql-hackers
Ron Mayer wrote:
> Greg Stark wrote:
> > 
> > That's what I want to believe. But picture if you have, say a
> > 1-terabyte table which is 50% dead tuples and you don't have a spare
> > 1-terabytes to rewrite the whole table.
> 
> Could one hypothetically do
>    update bigtable set pk = pk where ctid in (select ctid from bigtable order by ctid desc limit 100);
>    vacuum;
> and repeat until max(ctid) is small enough?

I remember Hannu Krosing said they used something like that to shrink
really bloated tables.  Maybe we should try to explicitely support a
mechanism that worked in that fashion.  I think I tried it at some point
and found that the problem with it was that ctid was too limited in what
it was able to do.

The neat thing is that now that we have the visibility fork, each vacuum
needn't scan the whole table each time.

-- 
Alvaro Herrera                                http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.


pgsql-hackers by date:

Previous
From: Gokulakannan Somasundaram
Date:
Subject: A bug in scan.l
Next
From: Tom Lane
Date:
Subject: Re: make installcheck is broken in HEAD on mingw