Re: Proposal of PITR performance improvement for 8.4.

From: Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>
To: Gregory Stark <stark(at)enterprisedb(dot)com>
Cc: Simon Riggs <simon(at)2ndQuadrant(dot)com>, Koichi Suzuki <koichi(dot)szk(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Proposal of PITR performance improvement for 8.4.
Date: 2008-10-28 12:44:57
Message-ID: 49070949.4070404@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Gregory Stark wrote:
> Simon Riggs <simon(at)2ndQuadrant(dot)com> writes:
>
>> I'm happy with the idea of a readahead process. I thought we were
>> implementing a BackgroundReader process for other uses. Is that dead
>> now?
>
> You and Bruce seem to keep resurrecting that idea. I've never liked it -- I
> always hated that in Oracle and thought it was a terrible kludge.
>
> I think the inter-process communication would be way too heavy-weight, by the
> time the other process is schedule the process which needed the blocks would
> have probably have done many of them already anyways. Worse, you would need a
> large number of reading processes and would start to run into locking
> contention on the work-queue as well.
>
> In any case it would be a lot of code to do what posix_fadvise does for us
> with a simple syscall anyways.

I agree.

> Am I misjudging this? Is this a popular idea? We could always implement it as
> a fall-back implementation for mdprefetch() where posix_fadvise (and libaio
> assuming we implement that as well) don't work. It has the advantage of
> working with any system at all even if it predates 1003.1.

Yeah, if we want to support prefetching on systems that don't have
posix_fadvise(), that would be the way to do it. posix_fadvise() is a
good API. We can support multiple platform-specific implementations of
it if there's interest, using posix_fadvise(), aio to a dummy buffer,
whatever functions there's on Windows, or background reader processes or
threads.

--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Hannu Krosing 2008-10-28 12:45:48 Re: VACUUMs and WAL
Previous Message Tom Lane 2008-10-28 12:42:14 Re: VACUUMs and WAL