comparison src/os/unix/ngx_file_aio_read.c @ 634:0d6525917227 NGINX_1_0_7

nginx 1.0.7 *) Change: now if total size of all ranges is greater than source response size, then nginx disables ranges and returns just the source response. *) Feature: the "max_ranges" directive. *) Feature: the module ngx_http_mp4_module. *) Feature: the "worker_aio_requests" directive. *) Bugfix: if nginx was built --with-file-aio it could not be run on Linux kernel which did not support AIO. *) Bugfix: in Linux AIO error processing. Thanks to Hagai Avrahami. *) Bugfix: in Linux AIO combined with open_file_cache. *) Bugfix: open_file_cache did not update file info on retest if file was not atomically changed. *) Bugfix: reduced memory consumption for long-lived requests. *) Bugfix: in the "proxy/fastcgi/scgi/uwsgi_ignore_client_abort" directives. *) Bugfix: nginx could not be built on MacOSX 10.7. *) Bugfix: in the "proxy/fastcgi/scgi/uwsgi_ignore_client_abort" directives. *) Bugfix: request body might be processed incorrectly if client used pipelining. *) Bugfix: in the "request_body_in_single_buf" directive. *) Bugfix: in "proxy_set_body" and "proxy_pass_request_body" directives if SSL connection to backend was used. *) Bugfix: nginx hogged CPU if all servers in an upstream were marked as "down". *) Bugfix: a segmentation fault might occur during reconfiguration if ssl_session_cache was defined but not used in previous configuration. *) Bugfix: a segmentation fault might occur in a worker process if many backup servers were used in an upstream.
author Igor Sysoev <http://sysoev.ru>
date Fri, 30 Sep 2011 00:00:00 +0400
parents 2b9e388c61f1
children 692f4d4d7f10
comparison
equal deleted inserted replaced
633:7c3c34755d2e 634:0d6525917227
83 ngx_set_errno(aio->err); 83 ngx_set_errno(aio->err);
84 84
85 if (aio->err == 0) { 85 if (aio->err == 0) {
86 return aio->nbytes; 86 return aio->nbytes;
87 } 87 }
88
89 ngx_log_error(NGX_LOG_CRIT, file->log, ngx_errno,
90 "aio read \"%s\" failed", file->name.data);
88 91
89 return NGX_ERROR; 92 return NGX_ERROR;
90 } 93 }
91 94
92 ngx_memzero(&aio->aiocb, sizeof(struct aiocb)); 95 ngx_memzero(&aio->aiocb, sizeof(struct aiocb));