Re: Postgres service stops when I kill client backend on Windows - Mailing list pgsql-hackers

From Magnus Hagander
Subject Re: Postgres service stops when I kill client backend on Windows
Date
Msg-id CABUevEy7LrQVvEzbPeFKOfu9mzVB4CGbyAR-ckRQR3BaAYEngg@mail.gmail.com
Whole thread Raw
In response to Re: Postgres service stops when I kill client backend on Windows  (Andres Freund <andres@anarazel.de>)
Responses Re: Postgres service stops when I kill client backend on Windows  (Michael Paquier <michael.paquier@gmail.com>)
List pgsql-hackers


On Mon, Oct 12, 2015 at 12:25 PM, Andres Freund <andres@anarazel.de> wrote:
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...

+1. It feels like we're setting our selves up for repeating this mistake at some later time :)
 
--

pgsql-hackers by date:

Previous
From: Andres Freund
Date:
Subject: Re: Postgres service stops when I kill client backend on Windows
Next
From: Emre Hasegeli
Date:
Subject: Re: point_ops for GiST