[Pgsql-ayuda] Como terminar un proceso

Alvaro Herrera alvherre@dcc.uchile.cl
Thu, 6 Nov 2003 09:45:47 -0300


On Thu, Nov 06, 2003 at 09:25:33AM -0300, Carmen Gloria Sepulveda Dedes wrote:

> Por otro lado, al consultar como super-usuario la vista
> pg_stat_activity, me dice que la funcion que se llamaba en el programa
> que acabo de terminar, sigue corriendo (me doy cuenta por lo que dice en
> el campo "current_query").
> 
> Lo que hice fue matar el proceso con "kill -9", pero sucedio que perdi
> todas las otras conexiones que tenia en la bd en ese momento (via psql),
> que me dieron el siguiente error:

En general, no solo en Postgres, es una idea bastante mala matar un
proceso via SIGKILL (-9).  Antes que eso, prueba SIGTERM, SIGQUIT o
SIGINT.  Si ninguno de esos te da el resultado esperado recien le mandas
SIGKILL.

En este caso particular, me parece recordar que una de esas tres señales
es la que se debe enviar para terminar un backend; ciertamente no
SIGKILL.

kill -l te da un listado de señales y números, aunque puedes hacer

kill -TERM <pid>
etc.

-- 
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"Ninguna manada de bestias tiene una voz tan horrible como la humana" (Orual)