Re: Postgres service stops when I kill client backend on Windows

From: "Charles Clavadetscher" <clavadetscher(at)swisspug(dot)org>
To: "'Dmitry Vasilyev'" <d(dot)vasilyev(at)postgrespro(dot)ru>, <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Postgres service stops when I kill client backend on Windows
Date: 2015-10-09 10:13:48
Message-ID: 029501d1027b$36d61dd0$a4825970$@swisspug.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hello Dmitry

> -----Original Message-----
> From: pgsql-hackers-owner(at)postgresql(dot)org [mailto:pgsql-hackers-owner(at)postgresql(dot)org] On Behalf Of Dmitry Vasilyev
> Sent: Freitag, 9. Oktober 2015 11:52
> To: pgsql-hackers(at)postgresql(dot)org
> Subject: [HACKERS] Postgres service stops when I kill client backend on Windows
>
> I’ve started PostgreSQL server on Windows and then I kill client
> backend’s process by taskkill the service was stopped:
>
> postgres=# select pg_backend_pid();
> pg_backend_pid
> ----------------
> 1976
>
> postgres=# \! taskkill /pid 1976 /f
> SUCCESS: The process with PID 1976 has been terminated.
> postgres=# select 1;
> server closed the connection unexpectedly
> This probably means the server terminated abnormally
> before or while processing the request.
> The connection to the server was lost. Attempting reset: Failed.
> !>
>
>
> If I kill backend’s process on Linux then service not failing. So
> what’s the problem? Why PostgreSQL is so strange on Windows?

I can't say what happens on windows, but I don't undestand either why you want to kill the session you are in.
Besides that why don't you use pg_terminate_backend?

db=> select pg_backend_pid();
pg_backend_pid
----------------
8808
(1 row)

db=> select pg_terminate_backend(8808);
FATAL: terminating connection due to administrator command
server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request.
The connection to the server was lost. Attempting reset: Succeeded.
db=> select pg_backend_pid();
pg_backend_pid
----------------
8500
(1 row)

Regards
Charles

>
>
> ------
> Dmitry Vasilyev
> Postgres Professional: http://www.postgrespro.com
> The Russian Postgres Company
>
>
> --
> Sent via pgsql-hackers mailing list (pgsql-hackers(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-hackers

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Dmitry Vasilyev 2015-10-09 10:25:51 Re: Postgres service stops when I kill client backend on Windows
Previous Message Etsuro Fujita 2015-10-09 10:05:51 Re: Foreign join pushdown vs EvalPlanQual