postgres.git / summary / log / commit / refs

commit    61e64cb19a08c23dca1df46f1ae09df514059fc6
Author:   Andres Freund <andres@anarazel.de>
Date:     Tue Sep 01 14:32:41 2026 +0000

    Make after-startup shmem failure test reliable
    
    The test expects a 128 kB request to exceed the shared memory available after
    startup.  Huge pages can round up the main shared memory segment enough for
    that request to succeed, defeating the test.
    
    Disable huge pages for the allocation-failure phase so that it exercises the
    intended error path independently of shared memory segment rounding.
    
    Author: Ayush Tiwari <ayushtiwari.slg01@gmail.com>
    Reported-by: Andres Freund <andres@anarazel.de>
    Discussion: https://postgr.es/m/rpkhzrrmo7qiz7rr3qlufksb2oci33wcg3ao75le7dqindgoif@6yozkjwb6bdf
    Backpatch-through: 19


src/test/modules/test_shmem/t/001_late_shmem_alloc.pl | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/test/modules/test_shmem/t/001_late_shmem_alloc.pl b/src/test/modules/test_shmem/t/001_late_shmem_alloc.pl index a7126ebce3f..9432b42181b 100644 --- a/src/test/modules/test_shmem/t/001_late_shmem_alloc.pl +++ b/src/test/modules/test_shmem/t/001_late_shmem_alloc.pl @@ -125,6 +125,9 @@ SKIP: ### # Test "out of shared memory" in an after-startup request ### +# Huge pages round up the main shared memory segment, which can leave more +# unused space than the request below. Disable them to make the test reliable. +$node->append_conf('postgresql.conf', 'huge_pages = off'); $node->start; my $session = $node->background_psql('postgres', on_error_stop => 0); [parent: ef67d599eff8]