Re: Experimental patch for inter-page delay in VACUUM - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Experimental patch for inter-page delay in VACUUM
Date
Msg-id 22408.1067961526@sss.pgh.pa.us
Whole thread Raw
In response to Experimental patch for inter-page delay in VACUUM  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Experimental patch for inter-page delay in VACUUM
List pgsql-hackers
Jan Wieck <JanWieck@Yahoo.com> writes:
> Tom Lane wrote:
>> I have never been happy with the fact that we use sync(2) at all.

> Sure does it do too much. But together with the other layer of 
> indirection, the virtual file descriptor pool, what is the exact 
> guaranteed behaviour of
>      write(); close(); open(); fsync();
> cross platform?

That isn't guaranteed, which is why we have to use sync() at the
moment.  To go over to fsync or O_SYNC we'd need more control over which
file descriptors are used to issue writes.  Which is why I was thinking
about moving the writes to a centralized writer process.

>> Actually, once you build it this way, you could make all writes
>> synchronous (open the files O_SYNC) so that there is never any need for
>> explicit fsync at checkpoint time.

> Yes, but then the configuration leans more towards "take over the RAM" 

Why?  The idea is to try to issue writes at a fairly steady rate, which
strikes me as much better than the current behavior.  I don't see why it
would force you to have large numbers of buffers available.  You'd want
a few thousand, no doubt, but that's not a large number.
        regards, tom lane


pgsql-hackers by date:

Previous
From: Andrew Dunstan
Date:
Subject: Re: Experimental patch for inter-page delay in VACUUM
Next
From: "Matthew T. O'Connor"
Date:
Subject: Re: Experimental patch for inter-page delay in VACUUM