Skip site navigation (1) Skip section navigation (2)

Re: Experimental patch for inter-page delay in VACUUM

From: "Matthew T(dot) O'Connor" <matthew(at)zeut(dot)net>
To: Christopher Browne <cbbrowne(at)acm(dot)org>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Experimental patch for inter-page delay in VACUUM
Date: 2003-11-03 14:57:54
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-hackers
Christopher Browne wrote:

>The world rejoiced as hannu(at)tm(dot)ee (Hannu Krosing) wrote:
>>Christopher Browne kirjutas E, 03.11.2003 kell 02:15:
>>>Well, actually, the case where it _would_ be troublesome would be
>>>where there was a combination of huge tables needing vacuuming and
>>>smaller ones that are _heavily_ updated (e.g. - account balances),
>>>where pg_autovacuum might take so long on some big tables that it
>>>wouldn't get to the smaller ones often enough.  
>>Can't one just run a _separate_ VACUUM on those smaller tables ?
>Yes, but that defeats the purpose of having a daemon that tries to
>manage this all for you.
But if this delayed vacuum was available for pg_autovacuum to use, it 
might be useful for pg_autovacuum to run multiple simultaneous vacuums.  
It seems to me that the delayed vacuum is so slow, that we could 
probably run several (a few) of them without saturating the I/O.

Or...  It seems to me that we have been observing something on the order 
of 10x-20x slowdown for vacuuming a table.  I think this is WAY 
overcompensating for the original problems, and would cause it's own 
problem as mentioned above.   Since the granularity of delay seems to be 
the problem can we do more work between delays? Instead of sleeping 
after every page (I assume this is what it's doing) perhaps we should 
sleep every 10 pages, or perhaps fix the sleep value at 10ms and make 
the amount of work done between sleeps a configurable option.  Seems 
that would allow small tables to be done without delay etc....

In response to


pgsql-hackers by date

Next:From: Tom LaneDate: 2003-11-03 15:01:55
Subject: Re: adding support for posix_fadvise()
Previous:From: Andrew SullivanDate: 2003-11-03 14:48:45
Subject: Re: Experimental patch for inter-page delay in VACUUM

Privacy Policy | About PostgreSQL
Copyright © 1996-2018 The PostgreSQL Global Development Group