panic: MUTEX_LOCK (22) [op.c:352]

Denis Seleznyov denis.seleznyov at gmail.com
Thu Aug 28 15:51:21 MSD 2008


2008/8/28 Gena Makhomed <gmm at csdoc.com>

> On Thursday, August 28, 2008 at 0:09:02, Denis V Seleznyov wrote:
>
> DVS> Имею сабж в логах при остановке nginx на RHEL5.2 x86_64.
> DVS> Соответственно, не работает service nginx stop и service nginx
> restart.
>
> скорее всего причина этих глюков в том,
> что nginx был собран вместе с экспериментальным модулем:
>
> --with-http_perl_module

Именно, я приводил примеры логов с perl_module и без него.

логика работы такая: если вызывать killproc $prog без параметров,
> сначала посылается сигнал kill -TERM $pid, потом ждут 1 секунду
> и посылают сигнал kill -KILL $pid
>
> если функция вызывается с параметром, например  killproc $prog -QUIT
> тогда только посылается сигнал, и происходит немедленный возврат из
> функции.
>
> в тех инит-скриптах для nginx`а, что я видел дял RHEL -
> функция stop реализована через killproc $prog -QUIT
> а restart - как stop ; start
>
я нагло стибрил с fedora 9, там так и есть

поэтому для nginx вполне может помочь заменить
> killproc $prog -QUIT
> на
> killproc $prog

без изменений

или в функции restart между stop и start вставить sleep 1 или 2 или 3

а вот sleep 1 помогает. видимо, nginx не мог подняться пока старый еще
умирал.
Видимо, при повышении нагрузки нужно будет пропорционально увеличивать
количество секунд :)



или (может быть) не использовать http_perl_module на production.
>
Нужен именно там.


-- 
Denis Seleznyov
http://www.cmsfx.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20080828/cd0f3b0f/attachment.html>


More information about the nginx-ru mailing list