Re: pgsql: Avoid improbable PANIC during heap_update. - Mailing list pgsql-committers

From Peter Geoghegan
Subject Re: pgsql: Avoid improbable PANIC during heap_update.
Date
Msg-id CAH2-WznYYsJxBYB1zvN_oA4zb_PGQdbF0x7TpJ-jFbDeJvPS1A@mail.gmail.com
Whole thread Raw
In response to Re: pgsql: Avoid improbable PANIC during heap_update.  (Jeff Davis <pgsql@j-davis.com>)
List pgsql-committers
On Sat, Oct 1, 2022 at 9:35 AM Jeff Davis <pgsql@j-davis.com> wrote:
> Doesn't that deal with the case you brought up directly? heap_delete()
> can't get the exclusive lock until VACUUM releases its cleanup lock, at
> which point all-visible will be set. Then heap_delete() should notice
> in line 2509 and then pin the VM buffer. Right?

I now believe that you're right. I don't think that this code was ever
designed to rely on cleanup locks in any way; that was kind of an
accident all along. Even still, I'm not sure how I missed such an
obvious thing. Sorry for the misdirection.

Still, there has to be *some* reason why the bug could repro on 13.

--
Peter Geoghegan



pgsql-committers by date:

Previous
From: Jeff Davis
Date:
Subject: Re: pgsql: Avoid improbable PANIC during heap_update.
Next
From: Andres Freund
Date:
Subject: pgsql: meson: Add prefix=/usr/local/pgsql to default_options