Maxim Sobolev <sobomax(at)sippysoft(dot)com> writes:
> From the man semopt:
> [EINVAL] No semaphore set corresponds to semid, or the process
> would exceed the system-defined limit for the number
> of per-process SEM_UNDO structures.
> AFAIK we've been hitting the second cause there. This is with FreeBSD 10.3
> and postgresql 9.2.16 specifically. We've also seen this with 9.1 I think,
> but I am not 100% sure. The specific limit that got exceeded
> was kern.ipc.semmnu.
We never ask semop(2) for SEM_UNDO, so are you sure this isn't a kernel
bug? I've never heard of such a report on any other platform.
regards, tom lane