Thomas Munro <thomas.mu...@gmail.com> writes: > One more thing I spotted, post commit: the example symptom of > systemd's RemoveIPC feature trashing your cluster is an error from > semctl(), but that can't happen anymore on a standard build.
Good point. > Not sure > what to put in its place... I guess the remaining symptoms would be > (1) the little "interlock" shmem segment is unregistered, which is > probably symptom-free (until you start a second postmaster in the same > pgdata), and (2) POSIX shm objects getting unlinked underneath a > parallel query. (1) would be very scary, because the "symptom" would be "second postmaster successfully starts and trashes your database". But our previous discussion found that that won't happen, because systemd notices the segment's positive nattch count. Unfortunately it seems there's nothing equivalent for POSIX shmem, so (2) is possible. See https://www.postgresql.org/message-id/5915.1481218827%40sss.pgh.pa.us Relevant to the current discussion: this creates a possible positive reason for setting dynamic_shared_memory_type to "sysv", namely if it's the best available way to get around RemoveIPC in a particular situation. Should we document that? regards, tom lane