coredump in 1.10.3
George .
george at ucdn.com
Mon Mar 13 13:24:46 UTC 2017
Hi Valentin, Sorry, I've sent the mail incidentally before I complete it ;)
ssl_proxy_cores # ./nginx -V
nginx version: nginx/1.10.3
built by gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4)
built with OpenSSL 1.0.2g 1 Mar 2016 (running with OpenSSL 1.0.2g-fips 1
Mar 2016)
TLS SNI support enabled
configure arguments: --prefix=/cdn/nginx_ssl_proxy --with-cc-opt='-O0 -g
-ggdb -march=core2' --with-debug --with-http_geoip_module
--with-http_realip_module --with-http_ssl_module
--without-http_charset_module --without-http_ssi_module
--without-http_userid_module --without-http_autoindex_module
--without-http_scgi_module --without-http_uwsgi_module
--without-http_fastcgi_module --without-http_limit_conn_module
--without-http_split_clients_module --without-http_limit_req_module
--with-http_stub_status_module --with-http_v2_module
and some variables values :
(gdb) p q
$1 = (ngx_queue_t *) 0x3fb0ab0
(gdb) p * q
$2 = {prev = 0xd3210507e0f72630, next = 0x5f5ded63e9edd904}
(gdb) p h2c->waiting
$3 = {prev = 0x3ac6ea0, next = 0x3fb0ab0}
and here is the config
nginx.conf:
# SSL Proxy config for **************
user cdnuser cdnuser;
worker_processes auto;
pid /cdn/tmp/nginx_ssl_proxy.pid;
#error_log logs/error.nginx.log debug;
error_log /dev/null error;
worker_rlimit_nofile 73728;
worker_rlimit_core 10240M;
working_directory /cdn/tmp/ssl_proxy_cores/;
events {
worker_connections 24576;
use epoll;
}
http {
include mime.types;
default_type application/octet-stream;
reset_timedout_connection on;
client_header_timeout 60s;
client_body_timeout 60s;
send_timeout 60s;
client_header_buffer_size 16k;
large_client_header_buffers 4 16k;
client_body_buffer_size 1k;
client_max_body_size 1k;
connection_pool_size 512;
server_names_hash_bucket_size 4096;
server_names_hash_max_size 4096;
request_pool_size 8k;
output_buffers 1 256k;
postpone_output 1460;
proxy_buffers 8 8k;
sendfile on;
tcp_nopush off;
tcp_nodelay on;
keepalive_timeout 60 20;
keepalive_requests 256;
ignore_invalid_headers on;
recursive_error_pages on;
resolver **********;
resolver_timeout 5s;
#------------------------
# SSL
#------------------------
ssl_ciphers '*************************************';
ssl_prefer_server_ciphers on;
ssl_session_timeout 15m;
ssl_session_cache shared:SSL:50m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_session_tickets on;
ssl_stapling on;
ssl_dhparam /cdn/ssl_certs/common/dhparam2048.pem;
ssl_buffer_size 16k;
#------------------------
# GeoIP
#------------------------
geoip_country /usr/share/GeoIP/GeoIP.dat;
set_real_ip_from 127.0.0.1;
real_ip_header X-Forwarded-For;
#------------------------
# Dynamic config stuff
#------------------------
variables_hash_max_size 2048;
variables_hash_bucket_size 256;
#------------------------
# Log Formats
#------------------------
log_format cdn_ssl_log
'``$connection``$connection_requests``$remote_addr``$geoip_city_country_code``$http_host``$request``$status``$request_method``$http_range``$bytes_sent``$body_bytes_sent``$request_time``$http_user_agent``$http_referer``$https``$http2``$sent_http_content_type``$sent_http_content_length``$sent_http_location``$sent_http_connection``$sent_http_keep_alive``$sent_http_transfer_encoding``$sent_http_cache_control``$sent_http_content_range``$sent_http_expires``$tcpinfo_rtt``$tcpinfo_rttvar``$tcpinfo_snd_cwnd``$tcpinfo_rcv_space``$upstream_addr``$upstream_connect_time``$upstream_cache_status``$upstream_status``$upstream_response_time``$upstream_response_length``$server_protocol``$ssl_cipher``$ssl_protocol``$ssl_server_name``$ssl_session_reused`';
access_log syslog:server=**********,tag=rp_ssl_log cdn_ssl_log;
#------------------------
# Default and Main Server
#------------------------
upstream local_rp {
server unix:/cdn/tmp/nginx.sock;
keepalive 16;
}
#------------------------
# *.ssl.ucdn.com server block
#------------------------
server {
listen *:443 ssl http2;
server_name *.ssl.ucdn.com;
ssl_certificate /cdn/ssl_certs/shared/ssl.ucdn.com.crt;
ssl_certificate_key /cdn/ssl_certs/shared/ssl.ucdn.com.key;
proxy_http_version "1.1";
proxy_set_header Connection "";
proxy_intercept_errors on;
proxy_max_temp_file_size 0;
proxy_connect_timeout 10s;
proxy_read_timeout 60s;
proxy_send_timeout 10s;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-CDN-Force-SSL "True";
proxy_set_header X-CDN-HTTP2 "$http2";
proxy_set_header X-CDN-HTTPS "$https";
location / {
proxy_pass http://local_rp;
error_page 301 302 307 = @redir;
}
location @redir {
internal;
set $cdn_upstream_http_location $upstream_http_location;
proxy_pass $cdn_upstream_http_location;
}
}
# other equivalent server blocks
# .
# .
# .
# .
}
On Mon, Mar 13, 2017 at 3:17 PM, Valentin V. Bartenev <vbart at nginx.com>
wrote:
> On Monday 13 March 2017 15:06:17 George . wrote:
> > Hi all,
> >
> > We've found two different coredumps in production machines running 1.10.3
> > handing ssl and http v2 traffic.
> >
> > Here is the backtrace of version compiles with -O0 -g -ggdb
> >
> [..]
>
> Do you use any 3rd-party modules or patches? Could you show
> nginx -V output?
>
> wbr, Valentin V. Bartenev
>
> _______________________________________________
> nginx-devel mailing list
> nginx-devel at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-devel/attachments/20170313/d70282b7/attachment-0001.html>
More information about the nginx-devel
mailing list