2012-04-13 9 views
7

Estoy intentando recargar unicornio con una señal USR2, pero me sale el siguiente error en los registros:unicornio no recargar con USR2

E, [2012-04-13T21:27:00.801192 #24474] ERROR -- : old PID:23820 running with existing pid=/home/user/app.git/tmp/unicorn.pid.oldbin, refusing rexec 

He buscar la internets, pero no tienen ni idea . Parece que el unicornio está tratando de escribir en el archivo pid? Estoy emitiendo una kill -s USR2 PID

Gracias

Respuesta

8

me encontré con esto hoy en día. Supongo que ya has enviado USR2 al unicornio, y esta es la segunda vez que intentas hacerlo.

Por el unicorn documentation on signals y el USR2: "Se debe enviar un QUIT por separado al proceso original una vez que se haya verificado que el niño está en funcionamiento".

En este caso en particular, que le pasa la edad PID para matar

kill -s QUIT 23820 

O bien, puede aprovechar el hecho de este viejo PID se almacena un archivo conocido (se hace referencia en su mensaje de error) junto el PID "actual" y ejecutar:

kill -s QUIT `cat /home/user/app.git/tmp/unicorn.pid.oldbin`