public inbox for [email protected]
help / color / mirror / Atom feedFrom: Mihail Nikalayeu <[email protected]>
To: Andres Freund <[email protected]>
Cc: [email protected]
Cc: Melanie Plageman <[email protected]>
Cc: Thomas Munro <[email protected]>
Cc: Heikki Linnakangas <[email protected]>
Cc: Noah Misch <[email protected]>
Subject: Re: Buffer locking is special (hints, checksums, AIO writes)
Date: Sat, 23 Aug 2025 12:31:53 +0200
Message-ID: <CADzfLwV65qEO1z02Spse47pNP-vGLhaBZpDXfftb2w-28UMf5A@mail.gmail.com> (raw)
In-Reply-To: <fvfmkr5kk4nyex56ejgxj3uzi63isfxovp2biecb4bspbjrze7@az2pljabhnff>
References: <fvfmkr5kk4nyex56ejgxj3uzi63isfxovp2biecb4bspbjrze7@az2pljabhnff>
Hello, Andres!
Andres Freund <[email protected]>:
>
> As part of that introduce a new lock level in-between share and exclusive
> locks (provisionally called share-exclusive, but I hate it). The new lock
> level allows other share lockers, but can only be held by one backend.
>
> This allows to change the rules so that:
>
> 1) Share lockers are not allowed to modify buffers anymore
> 2) Hint bits need the new lock mode (conditionally upgrading the lock in SetHintBits())
> 3) Write IO needs to the new lock level
IIUC, it may be mapped to existing locking system:
BUFFER_LOCK_SHARE ----> AccessShareLock
new lock mode ----> ExclusiveLock
BUFFER_LOCK_EXCLUSIVE ----> AccessExclusiveLock
So, it all may be named:
BUFFER_LOCK_ACCESS_SHARE
BUFFER_LOCK_EXCLUSIVE
BUFFER_LOCK_ACCESS_EXCLUSIVE
being more consistent with table-level locking system.
Greetings,
Mikhail.
view thread (57+ messages) latest in thread
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected], [email protected], [email protected], [email protected], [email protected], [email protected]
Subject: Re: Buffer locking is special (hints, checksums, AIO writes)
In-Reply-To: <CADzfLwV65qEO1z02Spse47pNP-vGLhaBZpDXfftb2w-28UMf5A@mail.gmail.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox