Hi > I think this is tentatively confirmed..I ran 20 loops for over 90 minutes with > no crash when parallel_leader_participation=off. > > On enabling parallel_leader_participation, crash within 10min. > > Sergei, could you confirm ?
I still have error with parallel_leader_participation = off. One difference is time: with parallel_leader_participation = on i have error after minute-two, with off - error was after 20 min. My desktop is - debian testing with actual updates, 4.19.0-2-amd64 #1 SMP Debian 4.19.16-1 (2019-01-17) x86_64 GNU/Linux - gcc version 8.2.0 (Debian 8.2.0-16) - i build fresh REL_11_STABLE postgresql with ./configure --enable-cassert --enable-debug CFLAGS="-ggdb -Og -g3 -fno-omit-frame-pointer" --enable-tap-tests --prefix=/... Can't provide dsa_dump(area) due recursion. With such dirty hack: fprintf(stderr, - " segment bin %zu (at least %d contiguous pages free):\n", - i, 1 << (i - 1)); - segment_index = area->control->segment_bins[i]; - while (segment_index != DSA_SEGMENT_INDEX_NONE) - { - dsa_segment_map *segment_map; - - segment_map = - get_segment_by_index(area, segment_index); - - fprintf(stderr, - " segment index %zu, usable_pages = %zu, " - "contiguous_pages = %zu, mapped at %p\n", - segment_index, - segment_map->header->usable_pages, - fpm_largest(segment_map->fpm), - segment_map->mapped_address); - segment_index = segment_map->header->next; - } + " segment bin %zu (at least %d contiguous pages free), segment_index=%zu\n", + i, 1 << (i - 1), area->control->segment_bins[i]); i have result: dsa_area handle 0: max_total_segment_size: 18446744073709551615 total_segment_size: 2105344 refcnt: 2 pinned: f segment bins: segment bin 0 (at least -2147483648 contiguous pages free), segment_index=0 segment bin 3 (at least 4 contiguous pages free), segment_index=1 segment bin 8 (at least 128 contiguous pages free), segment_index=2 pools: pool for blocks of span objects: fullness class 0 is empty fullness class 1: span descriptor at 0000010000001000, superblock at 0000010000001000, pages = 1, objects free = 54/72 fullness class 2 is empty fullness class 3 is empty pool for large object spans: fullness class 0 is empty fullness class 1: span descriptor at 00000100000013b8, superblock at 0000020000009000, pages = 8, objects free = 0/0 span descriptor at 0000010000001380, superblock at 0000020000001000, pages = 8, objects free = 0/0 span descriptor at 0000010000001348, superblock at 00000100000f2000, pages = 8, objects free = 0/0 span descriptor at 0000010000001310, superblock at 00000100000ea000, pages = 8, objects free = 0/0 span descriptor at 00000100000012d8, superblock at 00000100000e2000, pages = 8, objects free = 0/0 span descriptor at 00000100000012a0, superblock at 00000100000da000, pages = 8, objects free = 0/0 span descriptor at 0000010000001268, superblock at 00000100000d2000, pages = 8, objects free = 0/0 span descriptor at 0000010000001230, superblock at 00000100000ca000, pages = 8, objects free = 0/0 span descriptor at 00000100000011f8, superblock at 00000100000c2000, pages = 8, objects free = 0/0 span descriptor at 00000100000011c0, superblock at 00000100000ba000, pages = 8, objects free = 0/0 span descriptor at 0000010000001188, superblock at 00000100000b2000, pages = 8, objects free = 0/0 span descriptor at 0000010000001150, superblock at 00000100000aa000, pages = 8, objects free = 0/0 span descriptor at 0000010000001118, superblock at 00000100000a2000, pages = 8, objects free = 0/0 span descriptor at 00000100000010e0, superblock at 000001000009a000, pages = 8, objects free = 0/0 span descriptor at 00000100000010a8, superblock at 0000010000092000, pages = 8, objects free = 0/0 span descriptor at 0000010000001070, superblock at 0000010000012000, pages = 128, objects free = 0/0 fullness class 2 is empty fullness class 3 is empty pool for size class 32 (object size 3640 bytes): fullness class 0 is empty fullness class 1: span descriptor at 0000010000001038, superblock at 0000010000002000, pages = 16, objects free = 17/18 fullness class 2 is empty fullness class 3 is empty "at least -2147483648" seems surprise. melkij@melkij:~$ LANG=C ls -lt /dev/shm total 0 -rw------- 1 melkij melkij 4194304 Feb 12 11:56 PostgreSQL.1822959854 only one segment, restart_after_crash = off and no more postgresql instances running. regards, Sergei