ПРОЕКТЫ 


  АРХИВ 


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: Странности DELETE и open_file_cache



On Thu, Nov 20, 2008 at 05:35:32PM +0300, Монашёв Михаил wrote:

> Получен лог:
> 20/Nov/2008:17:15:28 +0300 89.208.146.215 348 i15.carguru.ru "DELETE 
> /i/users/test.1227190526.css HTTP/1.1" 404 "-" "libwww-perl/5.805"
> 20/Nov/2008:17:15:58 +0300 89.208.146.215 211 i15.carguru.ru "PUT 
> /i/users/test.1227190526.css HTTP/1.1" 201 "-" "libwww-perl/5.805"
> 20/Nov/2008:17:16:21 +0300 89.208.146.215 1064 i15.carguru.ru "GET 
> /i/users/test.1227190526.css HTTP/1.1" 200 "-" "libwww-perl/5.805"
> 20/Nov/2008:17:16:33 +0300 89.208.146.215 203 i15.carguru.ru "DELETE 
> /i/users/test.1227190526.css HTTP/1.1" 204 "-" "libwww-perl/5.805"
> 20/Nov/2008:17:17:14 +0300 89.208.146.215 1064 i15.carguru.ru "GET 
> /i/users/test.1227190526.css HTTP/1.1" 200 "-" "libwww-perl/5.805"
> 
> Как видно из лога второй DELETE почему-то не удаляет файл и GET потом
> этот файл успешно его возвращает. И содержимое файла точно такое же,
> какое записал PUT. Хотя на диске файла не оказывается после второго
> DELETE-а.
> 
> Оказалось, что виной такому поведению open_file_cache .
> 
> Конфиг был вот такой:
> 
>     open_file_cache             off;
>     open_file_cache            max=20000       inactive=120s;
>     open_file_cache_valid      120s;
>     open_file_cache_errors     off;
> 
> Не знаю, бага, это или фича. Но у меня она отняла пол дня. :-)

Фича. Файл удаляется, но в open_file_cache он остаются на время
open_file_cache_valid. Удаление из open_file_cache по DELETE
не решает проблемы, потому что кэши локальны для каждого воркера.
Проблему бы решило сообщение об удалении по kqueue/etc, но в nginx'е
на данный момент есть проблемы из-за которых воркер может упасть
при включении таких сообщений.


-- 
Игорь Сысоев
http://sysoev.ru



 




Copyright © Lexa Software, 1996-2009.