postgres-github.git / summary / log / commit / refs

commit    9ebe1c4f2c7cecd0fc2d02afd87a74f6ba44569e
Author:   Heikki Linnakangas <heikki.linnakangas@iki.fi>
Date:     Fri Apr 03 23:40:20 2026 +0000

    Merge init and max size options on shmem hash tables
    
    Replace the separate init and max size options with a single size
    option. We didn't make much use of the feature, all callers except the
    ones in wait_event.c already used the same size for both, and the hash
    tables in wait_event.c are small so there's little harm in just
    allocating them to the max size.
    
    The only reason why you might want to not reserve the max size upfront
    is to make the memory available for other hash tables to grow beyond
    their max size. Letting hash tables grow much beyond their max size is
    bad for performance, however, because we cannot resize the directory,
    and we never had very much "wiggle room" to grow to anyway so you
    couldn't really rely on it. We recently marked the LOCK and PROCLOCK
    tables with HAS_FIXED_SIZE, so there's nothing left in core that would
    benefit from more unallocated shared memory.
    
    Reviewed-by: Tomas Vondra <tomas@vondra.me>
    Discussion: https://www.postgresql.org/message-id/01ab1d41-3eda-4705-8bbd-af898f5007f1@iki.fi

[parent: d438a36591c5]