Cheaper VACUUMing - Mailing list pgsql-performance

From Christopher Browne
Subject Cheaper VACUUMing
Date
Msg-id m38y6kzn4b.fsf_-_@knuth.knuth.cbbrowne.com
Whole thread Raw
In response to Re: PostgreSQL clustering VS MySQL clustering  (Marty Scholes <marty@outputservices.com>)
Responses Re: Cheaper VACUUMing
List pgsql-performance
A long time ago, in a galaxy far, far away, gsstark@mit.edu (Greg Stark) wrote:
> Dawid Kuroczko <qnex42@gmail.com> writes:
>
>> Quick thought -- would it be to possible to implement a 'partial VACUUM'
>> per analogiam to partial indexes?
>
> No.
>
> But it gave me another idea. Perhaps equally infeasible, but I don't see why.
>
> What if there were a map of modified pages. So every time any tuple
> was marked deleted it could be marked in the map as modified. VACUUM
> would only have to look at these pages. And if it could mark as free
> every tuple that was marked as deleted then it could unmark the
> page.
>
> The only downside I see is that this could be a source of contention
> on multi-processor machines running lots of concurrent
> update/deletes.

I was thinking the same thing after hearing fairly extensive
"pooh-poohing" of the notion of vacuuming based on all the pages in
the shared cache.

This "hot list page table" would probably need to be a hash table.  It
rather parallels the FSM, including the way that it would need to be
limited in size.
--
wm(X,Y):-write(X),write('@'),write(Y). wm('cbbrowne','gmail.com').
http://cbbrowne.com/info/lsf.html
Rules  of  the  Evil  Overlord  #57. "Before  employing  any  captured
artifacts  or machinery, I  will carefully  read the  owner's manual."
<http://www.eviloverlord.com/>

pgsql-performance by date:

Previous
From: Christopher Browne
Date:
Subject: Re: PostgreSQL clustering VS MySQL clustering
Next
From: Christopher Browne
Date:
Subject: Re: PostgreSQL clustering VS MySQL clustering