Воркер падает в корку по 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