Re: VM corruption on standby
Kirill Reshke <reshkekirill@gmail.com>
From: Kirill Reshke <reshkekirill@gmail.com>
To: Andrey Borodin <x4mmm@yandex-team.ru>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>, Melanie Plageman <melanieplageman@gmail.com>
Date: 2025-08-14T06:35:15Z
Lists: pgsql-hackers
Attachments
- v1-0001-Do-not-exit-on-postmaster-death-ever-inside-CRIT-.patch (application/octet-stream) patch v1-0001
On Thu, 14 Aug 2025 at 10:41, Kirill Reshke <reshkekirill@gmail.com> wrote: > o I am trying to reproduce is following: > > 1) Some process p1 locks some buffer (name it buf1), enters CRIT > section, calls MarkBufferDirty and hangs inside XLogInsert on CondVar > in (GetXLogBuffer -> AdvanceXLInsertBuffer). > 2) CHECKPOINT (p2) stars and tries to FLUSH dirty buffers, awaiting lock on buf1 > 3) Postmaster kill-9-ed > 4) signal of postmaster death delivered to p1, it wakes up in > WaitLatch/WaitEventSetWaitBlock functions, checks postmaster > aliveness, and exits releasing all locks. > 5) p2 acquires locks on buf1 and flushes it to disk. > 6) signal of postmaster death delivered to p2, p2 exits. Andrey told me to create CF entry and attach fix, so doing it [0] https://commitfest.postgresql.org/patch/5964/ -- Best regards, Kirill Reshke
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