Re: MarkBufferDirtyHint() and LSN update - Mailing list pgsql-hackers

From Robert Haas
Subject Re: MarkBufferDirtyHint() and LSN update
Date
Msg-id CA+TgmobidaRMiMz9RCBXXTsyGnGuE6z9twiH2-WPBmoUWrKiSg@mail.gmail.com
Whole thread Raw
In response to MarkBufferDirtyHint() and LSN update  (Antonin Houska <ah@cybertec.at>)
Responses Re: MarkBufferDirtyHint() and LSN update  (Antonin Houska <ah@cybertec.at>)
List pgsql-hackers
On Wed, Oct 30, 2019 at 9:43 AM Antonin Houska <ah@cybertec.at> wrote:
> 5. In the first session, FlushBuffer()->TerminateBufferIO() will not clear
> BM_DIRTY because MarkBufferDirtyHint() has eventually set
> BM_JUST_DIRTIED. Thus the hint bit change itself will be written by the next
> call of FlushBuffer(). However page LSN is hasn't been updated so the
> requirement that WAL must be flushed first is not met.

This part confuses me. Are you saying that MarkBufferDirtyHint() can
set BM_JUST_DIRTIED without setting BM_DIRTY?

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company



pgsql-hackers by date:

Previous
From: Peter Geoghegan
Date:
Subject: Re: Remove configure --disable-float4-byval and --disable-float8-byval
Next
From: Asif Rehman
Date:
Subject: Re: WIP/PoC for parallel backup