Opened 13 years ago

Closed 13 years ago

Last modified 13 years ago

#91 closed defect (fixed)

when resolver dont works - workers crashes

Reported by: www.google.com/accounts/o8/id?id=AItOawkXww9WCLp2HcJIm_0WTNxx91BEra9WRzg Owned by: somebody
Priority: minor Milestone:
Component: nginx-core Version: 1.0.x
Keywords: resolver Cc:
uname -a: Linux server 3.0.6-gentoo #6 SMP Sun Nov 6 23:26:21 MSK 2011 x86_64 Intel(R) Xeon(R) CPU X3220 @ 2.40GHz GenuineIntel GNU/Linux
nginx -V: nginx: nginx version: nginx/1.0.10
nginx: TLS SNI support enabled
nginx: configure arguments: --prefix=/usr --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error_log --pid-path=/var/run/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-cc-opt=-I/usr/include --with-ld-opt=-L/usr/lib --http-log-path=/var/log/nginx/access_log --http-client-body-temp-path=/var/tmp/nginx/client --http-proxy-temp-path=/var/tmp/nginx/proxy --http-fastcgi-temp-path=/var/tmp/nginx/fastcgi --http-scgi-temp-path=/var/tmp/nginx/scgi --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --with-pcre --with-http_realip_module --with-http_ssl_module --without-mail_imap_module --without-mail_pop3_module --without-mail_smtp_module

Description

when specified server in resolver directive - does not work
all workers which accesses server with proxy_pass http://$host
will crash with signal 11

Change History (6)

comment:1 by Maxim Dounin, 13 years ago

Status: newaccepted

Yes, thank you, this is a known problem. When there is no error_log defined at global level error from a resolver cause null pointer dereference. As a workaround - explicitly define error_log at global level.

comment:2 by www.google.com/accounts/o8/id?id=AItOawkXww9WCLp2HcJIm_0WTNxx91BEra9WRzg, 13 years ago

I have only global defined error_log in my config.
And no local redefinitions.

comment:3 by Maxim Dounin, 13 years ago

Please show full config and backtrace then. See http://wiki.nginx.org/Debugging for details.

comment:4 by Maxim Dounin, 13 years ago

In [4497/nginx]:

Fixed null pointer dereference in resolver (ticket #91).

The cycle->new_log.file may not be set before config parsing finished if
there are no error_log directive defined at global level. Fix is to
copy it after config parsing.

Patch by Roman Arutyunyan.

comment:5 by Maxim Dounin, 13 years ago

Resolution: fixed
Status: acceptedclosed

Fix committed.

comment:6 by Maxim Dounin, 13 years ago

In [4515/nginx]:

Merge of r4497:

Fixed null pointer dereference in resolver (ticket #91).

The cycle->new_log.file may not be set before config parsing finished if
there are no error_log directive defined at global level. Fix is to
copy it after config parsing.

Patch by Roman Arutyunyan.

Note: See TracTickets for help on using tickets.