Re: about fsync in CLOG buffer write - Mailing list pgsql-hackers

From Jeff Janes
Subject Re: about fsync in CLOG buffer write
Date
Msg-id CAMkU=1xHY3rpovpdeu6TfdFghOr+4NTT=CGcC5Zp+34ERjSUbg@mail.gmail.com
Whole thread Raw
In response to Re: about fsync in CLOG buffer write  (Andres Freund <andres@anarazel.de>)
Responses Re: about fsync in CLOG buffer write  (Andres Freund <andres@anarazel.de>)
List pgsql-hackers
On Wed, Sep 2, 2015 at 5:32 AM, Andres Freund <andres@anarazel.de> wrote:
On 2015-09-10 19:39:59 +0800, 张广舟(明虚) wrote:
> We found there is a fsync call when CLOG buffer
> is written out in SlruPhysicalWritePage(). It is often called when a backend
> needs to check transaction status with SimpleLruReadPage().

That's when there's not enough buffers available some other, and your
case dirty, needs to be written out.

Why bother to find a place to store the page in shared memory at all?  If we just want to read it, and it isn't already in shared memory, then why not just ask the kernel for the specific byte we need?  The byte we want to read can't differ between shared memory and kernel, because it doesn't exist in shared memory.

Cheers,

Jeff

pgsql-hackers by date:

Previous
From: Stephen Frost
Date:
Subject: Re: typo in create policy doc
Next
From: Andres Freund
Date:
Subject: Re: about fsync in CLOG buffer write