Re: Back-patch use of unnamed POSIX semaphores for Linux?
Alex Hunsaker <badalex@gmail.com>
From: Alex Hunsaker <badalex@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Robert Haas <robertmhaas@gmail.com>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2016-12-08T02:28:51Z
Lists: pgsql-hackers
On Wed, Dec 7, 2016 at 3:42 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote: > > > Hmm ... after further experimentation, I still can't get this version of > systemd (231) to do anything evil. It turns out that Fedora ships it with > KillUserProcesses turned off by default, and maybe having that on is a > prerequisite for the other behavior? But that doesn't make a lot of sense > because we'd never be seeing the reports of databases moaning about lost > semaphores if the processes got killed first. Anyway, I see nothing bad > happening if KillUserProcesses is off, while if it's on then the database > gets shut down reasonably politely via SIGTERM. > > Color me confused ... maybe systemd's behavior has changed? > Hrm, the following incantation seems to break for me on a fresh Fedora 25 system: 1) As root su to $USER and start postgres. 2) ssh in as $USER and then logout 3) # psql localhost FATAL: semctl(4980742, 3, SETVAL, 0) failed: Invalid argument LOG: server process (PID 14569) exited with exit code 1 ...
Commits
-
Make the different Unix-y semaphore implementations ABI-compatible.
- be7b2848c6d8 10.0 landed
-
Use unnamed POSIX semaphores, if available, on Linux and FreeBSD.
- ecb0d20a9d2e 10.0 cited