pgsql: Allow iso-8859-1-size shmem attachments in single-user mode - Mailing list pgsql-committers

From Heikki Linnakangas
Subject pgsql: Allow iso-8859-1-size shmem attachments in single-user mode
Date
Msg-id E1xBsiO-00000001rda-2Sty@gemulon.postgresql.org
Whole thread
List pgsql-committers
Allow unknown-size shmem attachments in single-user mode

ShmemRequestInternal() rejected SHMEM_ATTACH_UNKNOWN_SIZE whenever
IsUnderPostmaster was false.  That also rejected an after-startup
attachment in a standalone backend, even if the area exists.

To fix, check whether the shared memory has been initialized
(ShmemIndex == NULL) rather than IsUnderPostmaster.

Refactor the tests, and add more test cases for after-startup
attachment, with SHMEM_ATTACH_UNKNOWN_SIZE and a mismatching size, and
for this single-user case.

Author: Ayush Tiwari <ayushtiwari.slg01@gmail.com>
Reviewed-by: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>
Discusssion: https://www.postgresql.org/message-id/CAJTYsWXREGXCnWdZJsXt8pT2UY_Y2GSx+HOUu2X3s8YDCLj0_A@mail.gmail.com
Backpatch-through: 19

Branch
------
REL_19_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/67c01b84788d1d58312d7d1691f160f681ec5984

Modified Files
--------------
src/backend/storage/ipc/shmem.c                    |  26 ++-
.../modules/test_shmem/t/001_late_shmem_alloc.pl   | 182 ++++++++++++++-------
src/test/modules/test_shmem/test_shmem--1.0.sql    |   4 +
src/test/modules/test_shmem/test_shmem.c           |  55 +++++++
4 files changed, 190 insertions(+), 77 deletions(-)


pgsql-committers by date:

Previous
From: Michael Paquier
Date:
Subject: pgsql: Fix clobbering of proc entry's statusFlags during slot invalidat
Next
From: Heikki Linnakangas
Date:
Subject: pgsql: Fix autovacuum docs related to widening multixid offsets to 64 b