Re: Сокет не закрывается после отправки тела
Maxim Dounin
mdounin на mdounin.ru
Пт Июн 15 13:21:02 UTC 2018
Hello!
On Fri, Jun 15, 2018 at 07:14:32AM -0400, eustas wrote:
> С другой стороны ngx_output_chain ожидает что ctx->output_filter может
> вернуть NGX_DONE. И это весьма дизориентирует, т.к. это как раз тот код,
> который описывает предполагаемое поведение фильтров.
Это выглядит как leftover со времён до переделки работы подзапросов в
nginx 0.7.25.
Соответствующая проверка появилась в 174f1e853e1e (0.3.6) для обработки
случая, когда соединение закрыто подзапросом, и стоит
c->destroyed. И стала ненужной после переделки работы подзапросов в
87b8c44906b5 (0.7.25), а также последующего добавления request
reference counting в 67254117b774 и f54b02dbb12b (0.8.11).
Ну то есть вернуть из фильтра NGX_DONE по прежнему можно и сейчас
- в рамках прежнего смысла этого кода - если стоит c->destroyed,
то есть если соединение уже закрыто и запрос уничтожен. Но такое
теперь может произойти, только если где-то ошибка и всё совсем
плохо.
[...]
--
Maxim Dounin
http://mdounin.ru/
Подробная информация о списке рассылки nginx-ru