Re: pg_terminate_backend idea - Mailing list pgsql-hackers

From Magnus Hagander
Subject Re: pg_terminate_backend idea
Date
Msg-id 6BCB9D8A16AC4241919521715F4D8BCE6C76F6@algol.sollentuna.se
Whole thread Raw
In response to pg_terminate_backend idea  ("Magnus Hagander" <mha@sollentuna.net>)
Responses Re: pg_terminate_backend idea
List pgsql-hackers
> > But it still requires me to send some data (such as a dummy
> query) to
> > the backend before it exits. This is because server side
> libpq blocks
> > when reading and ignores signals at this time. I believe
> the fix for
> > this would be to pass a flag down to the libpq routines
> that we want
> > to be abort in case of signal+flag, set only when doing the "main
> > call" to recv, so we can kill idle process.
>
> Yech!  That code is messy enough already, lets not pile
> another kluge atop it in order to handle something that's not
> even being requested AFAIR.

While I agree it'sa  bit of a cludge, saying that it's not requested is
absolutely and totally untrue. It has been requested *a lot*. People
even use a method that is now *known* to be unsafe, simply because we do
not provide another alternative.

Therefor, I prefer a kludge than nothing at all. But a "proper solution"
is of course better.


> In any case the correct way to solve the problem is to find
> out what's being left corrupt by SIGTERM, rather than install
> more messiness in order to avoid facing the real issue ...

That is unfortunatly way over my head. And it doesn't seem like anybody
who actually has what it takes to do the "proper solution" is interested
in doing it.


//Magnus


pgsql-hackers by date:

Previous
From: "Dave Page"
Date:
Subject: Re: Server instrumentation patch
Next
From: Andreas Pflug
Date:
Subject: Re: pg_terminate_backend idea