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

From Andrey Borodin
Subject Re: VM corruption on standby
Date
Msg-id EB4EF010-3246-4622-BC4C-2073AF3CDD2C@yandex-team.ru
Whole thread Raw
In response to Re: VM corruption on standby  (Alexander Korotkov <aekorotkov@gmail.com>)
Responses Re: VM corruption on standby
List pgsql-hackers

> On 3 Sep 2025, at 11:37, Alexander Korotkov <aekorotkov@gmail.com> wrote:
>
> Could you, please, recheck?

That patch also adds CondVar sleep in critical section. That patch is how we understood that such sleep is dangerous.

Actual patch to deteact a problem is much simpler:
```
diff --git a/src/backend/storage/ipc/waiteventset.c
b/src/backend/storage/ipc/waiteventset.c
index 7c0e66900f9..e89e1d115cb 100644
--- a/src/backend/storage/ipc/waiteventset.c
+++ b/src/backend/storage/ipc/waiteventset.c
@@ -1044,6 +1044,7 @@ WaitEventSetWait(WaitEventSet *set, long timeout,
       long            cur_timeout = -1;

       Assert(nevents > 0);
+       Assert(CritSectionCount == 0);

       /*
        * Initialize timeout if requested.  We must record the current time so
```

Though it will fail in multixact test.


Best regards, Andrey Borodin.


pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: Refactoring: Use soft error reporting for *_opt_error functions
Next
From: Jeff Davis
Date:
Subject: Should io_method=worker remain the default?