From: | Kirill Reshke <reshkekirill(at)gmail(dot)com> |
---|---|
To: | Andrey Borodin <x4mmm(at)yandex-team(dot)ru> |
Cc: | PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Melanie Plageman <melanieplageman(at)gmail(dot)com> |
Subject: | Re: VM corruption on standby |
Date: | 2025-08-14 06:35:15 |
Message-ID: | CALdSSPg_HrdJt9n3+JrDga4HkDUtJyhcT1LXE5WjYamgb-m06g@mail.gmail.com |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Thu, 14 Aug 2025 at 10:41, Kirill Reshke <reshkekirill(at)gmail(dot)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
Attachment | Content-Type | Size |
---|---|---|
v1-0001-Do-not-exit-on-postmaster-death-ever-inside-CRIT-.patch | application/octet-stream | 2.8 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Sutou Kouhei | 2025-08-14 06:36:54 | Re: Make COPY format extendable: Extract COPY TO format implementations |
Previous Message | shveta malik | 2025-08-14 06:07:03 | Re: Issue with logical replication slot during switchover |