From: | Tino Schwarze <postgresql(at)tisc(dot)de> |
---|---|
To: | pgsql-admin(at)postgresql(dot)org |
Subject: | Re: SIGKILL and force disconnecting user sessions |
Date: | 2008-09-22 15:06:34 |
Message-ID: | 20080922150634.GE10876@easy2.in-chemnitz.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-admin |
On Mon, Sep 22, 2008 at 09:43:29AM -0400, Brian A. Seklecki wrote:
BTW: What version of PG are you using?
> We need to kill apache P-conn pools from a an application/web server
> cluster for a specific database. We use a load-balancer, so we shut
> down the HA L4 Service VIP that the web servers pconnect() to, to
> prevent new incoming connections.
>
> The problem is then net.inet.tcp.* timeouts. We need to cane existing
> connections with a quickness, and pg_stat_activity is a read-only view.
>
> We need to kill the stale pcons, so just:
> $ pkill -a [database string]
>
> The connection goes away as "Disconnected per admin command"
>
> I just want to confirm:
>
> 1) There are no data consistency threats to SIGKIL a child thread
> process? Transactions and locks will be handled gracefully?
As far, as you do not really use SIGKILL (9), but SIGTERM (15),
everything should be fine.
> 2) There are no pgsql/admin level CLI builtin commands to do this in a
> more graceful manor?
You might want to try pg_cancel_backend(pid) to cancel backends,
but I suppose, the connection will stay alive.
- see http://www.postgresql.org/docs/8.2/static/functions-admin.html
HTH,
Tino.
--
"What we nourish flourishes." - "Was wir nähren erblüht."
From | Date | Subject | |
---|---|---|---|
Next Message | Lennin Caro | 2008-09-22 15:56:30 | Re: displaying enum |
Previous Message | chirag.dave | 2008-09-22 14:53:06 | Re: displaying enum |