Re: stress test for parallel workers
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Thomas Munro <thomas.munro@gmail.com>
Cc: Andrew Dunstan <andrew.dunstan@2ndquadrant.com>,
Mark Wong <mark@2ndquadrant.com>,
Justin Pryzby <pryzby@telsasoft.com>,
Andres Freund <andres@anarazel.de>,
pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2019-10-13T00:06:32Z
Lists: pgsql-hackers
Attachments
- stacktest.c (text/x-c)
I wrote: > In short, my current belief is that Linux PPC64 fails when trying > to deliver a signal if there's right around 2KB of stack remaining, > even though it should be able to expand the stack and press on. I figured I should try to remove some variables from the equation by demonstrating this claim without involving Postgres. The attached test program eats some stack space and then waits to be sent SIGUSR1. For some values of "some stack space", it dumps core: [tgl@postgresql-fedora ~]$ gcc -g -Wall -O1 stacktest.c [tgl@postgresql-fedora ~]$ ./a.out 1240000 & [1] 11796 [tgl@postgresql-fedora ~]$ kill -USR1 11796 [tgl@postgresql-fedora ~]$ signal delivered, stack base 0x7fffdc160000 top 0x7fffdc031420 (1240032 used) [1]+ Done ./a.out 1240000 [tgl@postgresql-fedora ~]$ ./a.out 1242000 & [1] 11797 [tgl@postgresql-fedora ~]$ kill -USR1 11797 [tgl@postgresql-fedora ~]$ [1]+ Segmentation fault (core dumped) ./a.out 1242000 [tgl@postgresql-fedora ~]$ uname -a Linux postgresql-fedora.novalocal 4.18.19-100.fc27.ppc64le #1 SMP Wed Nov 14 21:53:32 UTC 2018 ppc64le ppc64le ppc64le GNU/Linux I don't think any further proof is required that this is a kernel bug. Where would be a good place to file it? regards, tom lane
Commits
-
In the postmaster, rely on the signal infrastructure to block signals.
- 8b53dbada4a6 12.5 landed
- 85834023a95e 11.10 landed
- 7753ca49d358 9.6.20 landed
- 4e95733b0864 10.15 landed
- 9abb2bfc0460 13.0 landed
-
Paper over regression failures in infinite_recurse() on PPC64 Linux.
- c7e2364a5f17 12.5 landed
- ae0f7b11f143 14.0 landed
- 855b6f287100 13.1 landed
-
Hack pg_ctl to report postmaster's exit status.
- 6a5084eed495 13.0 landed
-
Re-order some regression test scripts for more parallelism.
- 798070ec058f 12.0 cited