Re: Master процесс nginx 0.6.38 съедает всю доступную память

Одинцов Павел pavel.odintsov at googlemail.com
Thu Sep 17 18:16:35 MSD 2009


Вечер добрый!

Так у нас nginx без него был собран. Или там код какой-то не
отключается при сборке без него?

2009/9/17 Igor Sysoev <is at rambler-co.ru>:
> On Thu, Sep 17, 2009 at 04:04:06PM +0400, Igor Sysoev wrote:
>
>> On Thu, Sep 17, 2009 at 02:59:21PM +0400, Maxim Dounin wrote:
>>
>> > Hello!
>> >
>> > On Thu, Sep 17, 2009 at 09:11:02AM +0500, Одинцов Павел wrote:
>> >
>> > > Доброе утро!
>> > >
>> > > Снова воспроизвелось на 0.6.38 и очень красиво воспроизвелось :)
>> >
>> > [...]
>> >
>> >
>> > > --- SIGHUP (Hangup) @ 0 (0) ---
>> > > gettimeofday({1253118667, 649143}, NULL) = 0
>> > > rt_sigreturn(0x667b29)                  = -1 EINTR (Interrupted system call)
>> > > gettimeofday({1253118667, 649273}, NULL) = 0
>> > > uname({sys="Linux", node="server4.hosting.reg.ru", ...}) = 0
>> > > open("/etc/nginx/nginx.conf", O_RDONLY) = 21
>> > > fstat(21, {st_mode=S_IFREG|0640, st_size=1023752, ...}) = 0
>> > > pread(21, "################################"..., 4096, 0) = 4096
>> >
>> > [...]
>> >
>> > > pread(21, "\tproxy_pass http://87.242.78.188"..., 4093, 1021200) = 2539
>> > > brk(0x1cc67000)                         = 0x1cc67000
>> > > pread(21, "", 4094, 1023739)            = 0
>> >
>> > [...]
>> >
>> > Судя по всему, nginx.conf переписали в процессе чтения его
>> > nginx'ом.  Прочиталось всего 1023739 байт (1021200 + 2539), а файл
>> > исходно был размером 1023752 байта.
>> >
>> > Баг это не отменяет, но вообще так делать нельзя, файлы надо
>> > менять атомарно (писать в другое место + rename).  Как минимум от
>> > подобных действий должна случаться ошибка чтения конфигурации (и
>> > отмена переконфигурации соответственно).
>>
>> В этом месте есть проблемы, которые я сейчас лечу, но если конфиг будет
>> так редактироваться без изменения длины, то возможны весьма разнообразные
>> эффекты.
>
> Похоже, утечка памяти была связана только с перловым модулем, а вообще
> nginx на такое ругается и не использует эту конфигурацию.
>
>
> --
> Игорь Сысоев
> http://sysoev.ru
>
>



-- 
С уважением, Одинцов Павел


More information about the nginx-ru mailing list