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: 3FA66CF2.6040409@zeut.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
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

Responses

Browse pgsql-hackers by date

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