Воркер падает в корку по SIGSEGV (с примером)
nickolay
nginx-forum на forum.nginx.org
Пт Июн 22 15:25:00 UTC 2018
Всех приветствую!
Есть простой perl-модуль, который работает под nginx без проблем на древних
версиях (кажется до 1.7), а на свежих версиях nginx этот модуль приводит к
тому, что воркеры начинают падать в корку по SIGSEGV.
Разобрал модуль до мелочей и нашёл, что всё падает на send_http_header().
Вот пример этого модуля:
package post_download;
use nginx;
use strict;
sub handler {
my $r = shift;
$r->send_http_header("text/plain");
$r->print("OK\n");
return OK;
}
Воркеры падают не на каждый такой запрос, а после нескольких таких
запросов.
Подключается этот модуль обычным способом:
perl_require /etc/nginx/perl/post_download.pm;
100% баг наблюдается на двух версиях: 1.12.2 и на 1.15.0.
Posted at Nginx Forum: https://forum.nginx.org/read.php?21,280252,280252#msg-280252
Подробная информация о списке рассылки nginx-ru