ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: nginx-0.8.34



Hello!

On Wed, Mar 03, 2010 at 11:04:17PM +0300, Igor Sysoev wrote:

> On Wed, Mar 03, 2010 at 10:58:19PM +0300, Maxim Dounin wrote:
> 
> > Hello!
> > 
> > On Wed, Mar 03, 2010 at 10:48:10PM +0300, Igor Sysoev wrote:
> > 
> > > On Wed, Mar 03, 2010 at 10:46:05PM +0300, Igor Sysoev wrote:
> > > 
> > > > On Wed, Mar 03, 2010 at 09:36:56PM +0300, Vladimir Sopot wrote:
> > > > 
> > > > > Приветствую!
> > > > > 
> > > > > А для проблемки c memcached 
> > > > > (http://www.lexa.ru/nginx-ru/msg32094.html) снова надо будет 
> > > > > накатывать патч?
> > > > 
> > > > Пока да. Мне нужно
> > > > 1) воспроизвести ошибку на 0.6.14
> > > 
> > > Вернее, воспроизвести ту ошибку на 0.6.13, которая была пофикшена в 
> > > 0.6.14.
> > 
> > Вроде ж я ещё тогда тест нарисовал и вроде даже ссылку на него 
> > давал, нет?
> > 
> > http://mdounin.ru/hg/nginx-tests/rev/25047dc6ae9b
> > 
> > Или ты обязательно хочешь с бесконечным циклом во writer'е?
> 
> Да, мне нужно убедиться, что твой патч фиксит обе баги.

Ну я вроде бы объяснил - это одна и та же бага, только результаты 
на выходе разные.  Бесконечный цикл возникает когда на выход 
отправляется буфер отрицательного размера.  А до кода чтения 
остатков trailer'а там вообще дело не доходит, он в 0.6.13 был 
правильный (почти - выход всё-таки лучше делать).

Но если очень хочется - почему нет?  Только в test suite я это 
включать не буду, он у меня глупый и SIGKILL'ом убежавшие 
процессы бить не умеет. :)

Тест прилагается.

На 0.6.13 даёт цикл:

2010/03/04 03:27:14 [debug] 45924#0: *1 memcached filter bytes:2006 size:4016 
length:2015 rest:7
2010/03/04 03:27:14 [error] 45924#0: *1 memcached sent invalid trailer while 
reading upstream, client: 127.0.0.1, server: loc
alhost, URL: "/", upstream: "memcached://127.0.0.1:8081", host: "localhost"
2010/03/04 03:27:14 [debug] 45924#0: *1 http output filter "/?"
2010/03/04 03:27:14 [debug] 45924#0: *1 copy filter: "/?"
2010/03/04 03:27:14 [debug] 45924#0: *1 http postpone filter "/?" 080F19C8
2010/03/04 03:27:14 [debug] 45924#0: *1 http postpone filter out "/?"
2010/03/04 03:27:14 [debug] 45924#0: *1 write old buf t:0 f:0 00000000, pos 
080F6400, size: 986 file: 0, size: 0
2010/03/04 03:27:14 [debug] 45924#0: *1 write new buf t:0 f:0 00000000, pos 
080F67DA, size: -2 file: 0, size: 0
...
2010/03/04 03:27:14 [debug] 45924#0: *1 writev: 984 of 984
2010/03/04 03:27:14 [debug] 45924#0: *1 writev: 0 of 0
2010/03/04 03:27:14 [debug] 45924#0: *1 writev: 0 of 0
2010/03/04 03:27:14 [debug] 45924#0: *1 writev: 0 of 0
2010/03/04 03:27:14 [debug] 45924#0: *1 writev: 0 of 0
2010/03/04 03:27:14 [debug] 45924#0: *1 writev: 0 of 0
2010/03/04 03:27:14 [debug] 45924#0: *1 writev: 0 of 0
...

На 0.8.34 без патча - цикла нет, но есть ругань на invalid trailer 
при его дочитывании:

...
2010/03/04 03:31:22 [debug] 45970#0: *1 recv: eof:0, avail:4, err:0
2010/03/04 03:31:22 [debug] 45970#0: *1 recv: fd:8 4 of 7
2010/03/04 03:31:22 [error] 45970#0: *1 memcached sent invalid trailer while 
reading upstream, client: 127.0.0.1, server: loc
alhost, request: "GET / HTTP/1.0", upstream: "memcached://127.0.0.1:8081", 
host: "localhost"
...

На 0.8.34 с патчем - ни циклов, ни ругани.

Maxim Dounin

Attachment: memcached-fake-big.t
Description: Troff document

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.