pgsql: Fix shmem allocation of fixed-sized custom stats kind

Started by Michael Paquier4 months ago1 messagescomitters
Jump to latest
#1Michael Paquier
michael@paquier.xyz

Fix shmem allocation of fixed-sized custom stats kind

StatsShmemSize(), that computes the shmem size needed for pgstats,
includes the amount of shared memory wanted by all the custom stats
kinds registered. However, the shared memory allocation was done by
ShmemAlloc() in StatsShmemInit(), meaning that the space reserved was
not used, wasting some memory.

These extra allocations would show up under "<anonymous>" in
pg_shmem_allocations, as the allocations done by ShmemAlloc() are not
tracked by ShmemIndexEnt.

Issue introduced by 7949d9594582.

Author: Heikki Linnakangas <hlinnaka@iki.fi>
Discussion: /messages/by-id/04b04387-92f5-476c-90b0-4064e71c5f37@iki.fi
Backpatch-through: 18

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/17132f55c5a2c04743edec20655cc7123ce08713

Modified Files
--------------
src/backend/utils/activity/pgstat_shmem.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)