Re: VM corruption on standby
Andrey Borodin <x4mmm@yandex-team.ru>
From: Andrey Borodin <x4mmm@yandex-team.ru>
To: Aleksander Alekseev <aleksander@tigerdata.com>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>,
Melanie Plageman <melanieplageman@gmail.com>
Date: 2025-08-09T15:53:54Z
Lists: pgsql-hackers
> On 9 Aug 2025, at 18:28, Andrey Borodin <x4mmm@yandex-team.ru> wrote: > > Also I investigated that in a moment of kill -9 checkpointer flushes heap page to disk despite content lock. I haven't found who released content lock though. I've written this message and understood: its LWLockReleaseAll(). 0. checkpointer is going to flush a heap buffer but waits on content lock 1. client is resetting PD_ALL_VISIBLE from page 2. postmaster is killed and command client to go down 3. client calls LWLockReleaseAll() at ProcKill() (?) 4. checkpointer flushes buffer with reset PG_ALL_VISIBLE that is not WAL-logged to standby 5. subsequent deletes do not log resetting this bit 6. deleted data is observable on standby with IndexOnlyScan Any idea how to fix this? Best regards, Andrey Borodin.
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Revert "Get rid of WALBufMappingLock"
- 2ce6abdf5085 18.0 landed
- c13070a27b63 19 (unreleased) landed
-
Get rid of WALBufMappingLock
- bc22dc0e0ddc 18.0 cited
-
Split WaitEventSet functions to separate source file
- 393e0d231405 18.0 cited
-
Add WL_EXIT_ON_PM_DEATH pseudo-event.
- cfdf4dc4fc96 12.0 cited