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

From Robert Haas
Subject Re: remove flatfiles.c
Date
Msg-id 603c8f070909011956p62d0cc7ct55af7d1b16f2ddb6@mail.gmail.com
Whole thread Raw
In response to Re: remove flatfiles.c  (Alvaro Herrera <alvherre@commandprompt.com>)
Responses Re: remove flatfiles.c
List pgsql-hackers
On Tue, Sep 1, 2009 at 9:29 PM, Alvaro
Herrera<alvherre@commandprompt.com> wrote:
> 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.

I think a way to incrementally shrink large tables would be enormously
beneficial.   Maybe vacuum could try to do a bit of that each time it
runs.

...Robert


pgsql-hackers by date:

Previous
From: Robert Haas
Date:
Subject: Re: remove flatfiles.c
Next
From: Alvaro Herrera
Date:
Subject: Re: remove flatfiles.c