Re: VM corruption on standby - Mailing list pgsql-hackers

From Kirill Reshke
Subject Re: VM corruption on standby
Date
Msg-id CALdSSPg6QRVouTT0wLZ4bZb=P4Aj6tNrCdcspHHv6KShOCfo6A@mail.gmail.com
Whole thread Raw
In response to Re: VM corruption on standby  (Aleksander Alekseev <aleksander@tigerdata.com>)
List pgsql-hackers
On Sun, 10 Aug 2025 at 01:55, Aleksander Alekseev
<aleksander@tigerdata.com> wrote:
> For this reason we have PageHeaderData.pd_lsn for instance - to make sure
> pages are evicted only *after* the record that changed it is written
> to disk (because WAL records can't be applied to pages from the
> future).

We don't bump the LSN of the heap page when setting the visibility
map bit.

> I guess the intent here could be to do an optimization of some sort
> but the facts that 1. the instance can be killed at any time and 2.
> there might be replicas - were not considered.

> IMHO: logging the changes first, then allowing to evict the page.

Clearing the vm before the logging changes was intentional [0].
So I assume we should not change the approach, but rather just tweak
things a bit to make the whole thing work.

[0] https://www.postgresql.org/message-id/BANLkTimuLk4RHXSQHEEiYGbxiXp2mh5KCA%40mail.gmail.com

-- 
Best regards,
Kirill Reshke



pgsql-hackers by date:

Previous
From: Noah Misch
Date:
Subject: Re: A few patches to clarify snapshot management
Next
From: Andrey Borodin
Date:
Subject: Re: VM corruption on standby