On 2015-10-12 11:25:35 +0530, Amit Kapila wrote:
> /*
> + * Close the shared memory handle as the syslogger doesn't need to
> + * attach to it. For EXEC_BACKEND case, the shared memory handle
> + * is inherited by all postmaster child processes irrespective of
> + * whether they need it or not.
> + */
> +#ifdef EXEC_BACKEND
> + if (!CloseHandle(UsedShmemSegID))
> + elog(LOG, "could not close handle to shared memory: error code %lu", GetLastError());
> +#endif
> +
It feels wrong to do this in syslogger.c - I mean it's not the only
process that's not attached to shared memory. Sure, the others get
killed, but nonetheless...
Greetings,
Andres Freund