agora inbox for pgsql-committers@postgresql.org
help / color / mirror / Atom feedFrom: Michael Paquier <michael@paquier.xyz>
To: pgsql-committers@lists.postgresql.org
Subject: pgsql: Switch Get[Local]BufferDescriptor() to use a signed value in inp
Date: Fri, 03 Jul 2026 03:07:53 +0000
Message-ID: <E1wfUFt-0018Be-21@gemulon.postgresql.org> (raw)
Switch Get[Local]BufferDescriptor() to use a signed value in input
GetBufferDescriptor() and GetLocalBufferDescriptor() took a uint32
buffer index, but every real caller derives the index from a Buffer:
- Unsigned value for shared buffers.
- Signed value for local buffers.
Both routines now take in input a signed number, GetBufferDescriptor()
gaining an assertion checking that the input value is in the range
allowed by the GUC shared_buffers. This work is a follow-up of
e18b0cb7344c, where we found that passing down a value for a local
buffer was undetected and finished outside the range of NBuffers.
While monitoring all the existing callers of *BufferDescriptor(), the
only consumer that passes does an unsigned value is ClockSweepTick(),
whose result is always a module of NBuffers.
Suggested-by: Andres Freund <andres@anarazel.de>
Author: Ayush Tiwari <ayushtiwari.slg01@gmail.com>
Reviewed-by: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>
Reviewed-by: Michael Paquier <michael@paquier.xyz>
Discussion: https://postgr.es/m/CAExHW5uzRMYVZsXXS3HXXT0fG_sNrpUhUqwP4NorhaCqH9JDhA@mail.gmail.com
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/ba4134075a822e119e2ca6c2718ff08ae9464a37
Modified Files
--------------
src/include/storage/buf_internals.h | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
Message-ID: <E1wfUFt-0018Be-21@gemulon.postgresql.org>
Permalink: ../E1wfUFt-0018Be-21@gemulon.postgresql.org/
Also on: postgresql.org/message-id/E1wfUFt-0018Be-21@gemulon.postgresql.org
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: pgsql-committers@postgresql.org
Cc: michael@paquier.xyz, pgsql-committers@lists.postgresql.org
Subject: Re: pgsql: Switch Get[Local]BufferDescriptor() to use a signed value in inp
In-Reply-To: <E1wfUFt-0018Be-21@gemulon.postgresql.org>
* 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