Thread: Backend process is still runs even postmaster got killed

Backend process is still runs even postmaster got killed

From
Hari Babu
Date:

Backend processes are still running even if the postmaster got killed and all other server processes are exited by checking the

Postmaster status.

 

And the backend process is providing  the service to the client.

Is there any problems are possible? If we continue the system for a long  time with the above behavior?

 

Until all these kind of backend processes are exited, postmaster is failing to start.

Manual cleanup is required for these backend processes? Or is there anyway we can handle?

 

Regards,

Hari babu.

 

 

Re: Backend process is still runs even postmaster got killed

From
Thalis Kalfigkopoulos
Date:


On Fri, Dec 7, 2012 at 10:21 AM, Hari Babu <haribabu.kommi@huawei.com> wrote:

Backend processes are still running even if the postmaster got killed and all other server processes are exited by checking the

Postmaster status.

 

And the backend process is providing  the service to the client.

Is there any problems are possible? If we continue the system for a long  time with the above behavior?

 

Until all these kind of backend processes are exited, postmaster is failing to start.

Manual cleanup is required for these backend processes? Or is there anyway we can handle?

 

Regards,

Hari babu.


 

Hi Hari.

 
How exactly do you kill the postmaster? It is suggested you use pg_ctl for server shutdowns/restarts. Check out the option -m:
 -m SHUTDOWN-MODE   can be "smart", "fast", or "immediate"
Shutdown modes are:
  smart       quit after all clients have disconnected
  fast        quit directly, with proper shutdown
  immediate   quit without complete shutdown; will lead to recovery on restart
 
"Smart" will wait for all your backend processes to terminate (or fail if it takes too long). If i remember correctly "fast" will cause the postmaster to exit even if backends are still up, the equivalent of sending a kill -15 (SIGTERM). And "immediate" is like sending a kill -9 (SIGKILL) i.e. violent shutdown of everything.

I'm guessing you went for the equivalent of SIGTERM that's why you still have backends running.

regards,
--thalis

Re: Backend process is still runs even postmaster got killed

From
Hari Babu
Date:

>On Fri, Dec 7, 2012 at 7:26 PM, Thalis Kalfigkopoulos <tkalfigo(at)gmail(dot)com> wrote:

>>On Fri, Dec 7, 2012 at 10:21 AM, Hari Babu <haribabu(dot)komm(at)huawei(dot)com> wrote:

>>Backend processes are still running even if the postmaster got killed and all other server processes are exited by checking the

>>Postmaster status.

 >>And the backend process is providing  the service to the client.

>>Is there any problems are possible? If we continue the system for a long  time with the above behavior?

 >>Until all these kind of backend processes are exited, postmaster is failing to start.

>>Manual cleanup is required for these backend processes? Or is there anyway we can handle?

  

>Hi Hari.

> 

>How exactly do you kill the postmaster? It is suggested you use pg_ctl for server shutdowns/restarts. Check out the option -m:
 >-m SHUTDOWN-MODE   can be "smart", "fast", or "immediate"
>Shutdown modes are:
> smart       quit after all clients have disconnected
>  fast        quit directly, with proper shutdown
>  immediate   quit without complete shutdown; will lead to recovery on restart
 
>"Smart" will wait for all your backend processes to terminate (or fail if it takes too long). If i remember correctly "fast" will cause the postmaster to exit even if >backends are still up, the equivalent of sending a kill -15 (SIGTERM). And "immediate" is like sending a kill -9 (SIGKILL) i.e. violent shutdown of everything.
>
>I'm guessing you went for the equivalent of SIGTERM that's why you still have backends running.


Usually we are using the pg_ctl with shutdown option only.

Actually I thought of asking the postmaster crash scenario, which I have simulated with kill -9 PID.

I know postmaster crash is a very rare scenario, In this I want to know what are all the problems can occur?

 

Regards,

Hari babu.

 

 

 

 

Re: Backend process is still runs even postmaster got killed

From
Alvaro Herrera
Date:
Hari Babu wrote:
> Backend processes are still running even if the postmaster got killed and
> all other server processes are exited by checking the
>
> Postmaster status.

What server version?


--
Álvaro Herrera                http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services


Re: Backend process is still runs even postmaster got killed

From
Hari Babu
Date:
On Fri, Dec 7, 2012 at 10:21 AM, Alvaro Herrera
<alvherre(at)2ndquadrant(dot)com> wrote:
>>Hari Babu wrote:
>> Backend processes are still running even if the postmaster got killed and
>> all other server processes are exited by checking the
>>
>> Postmaster status.

>What server version?

I had tested it in 9.3 devel and 9.2 as well.
I tested as follows.

./pg_ctl -D data start
./psql postgres

In another terminal kill the postmaster with kill -9 PID.
Now start using the psql which is already connected, it can execute all
queries.
And check the server processes (ps -elf | grep postgres) only backend
process will remain.

I know postmaster crash is a very rare scenario, If backend continuously
providing the service,
I want to know what are all the problems can occur?

Regards,
Hari babu.