Re: really lazy vacuums? - Mailing list pgsql-hackers

From Greg Stark
Subject Re: really lazy vacuums?
Date
Msg-id AANLkTikEUUOhR5gX4b2gXU3YkQB-VBkWz7YPg-cExXdX@mail.gmail.com
Whole thread Raw
In response to Re: really lazy vacuums?  (Robert Haas <robertmhaas@gmail.com>)
Responses Re: really lazy vacuums?
List pgsql-hackers
On Mon, Mar 14, 2011 at 8:33 PM, Robert Haas <robertmhaas@gmail.com> wrote:
> I'm not sure about that either, although I'm not sure of the reverse
> either.  But before I invest any time in it, do you have any other
> good ideas for addressing the "it stinks to scan the entire index
> every time we vacuum" problem?  Or for generally making vacuum
> cheaper?

You could imagine an index am that instead of scanning the index just
accumulated all the dead tuples in a hash table and checked it before
following any index link. Whenever the hash table gets too big it
could do a sequential scan and prune any pointers to those tuples and
start a new hash table.

That would work well if there are frequent vacuums finding a few
tuples per vacuum. It might even allow us to absorb dead tuples from
"retail" vacuums so we could get rid of line pointers earlier.  But it
would involve more WAL-logged operations and incur an extra overhead
on each index lookup.




--
greg


pgsql-hackers by date:

Previous
From: Josh Berkus
Date:
Subject: Re: dependency between numbers keywords and parser speed
Next
From: Nikhil Sontakke
Date:
Subject: Re: Fwd: index corruption in PG 8.3.13