aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMaxim Dounin <mdounin@mdounin.ru>2015-03-23 20:56:58 +0300
committerMaxim Dounin <mdounin@mdounin.ru>2015-03-23 20:56:58 +0300
commit9131eb11c9b204cb12991013f84ffe0bfa64ac14 (patch)
tree768dba02ed7e9ad34f514f696ad07b9139fc473f /src
parent3560af89996e1028cac5a8ee5cdaa9475c1117fc (diff)
downloadnginx-9131eb11c9b204cb12991013f84ffe0bfa64ac14.tar.gz
nginx-9131eb11c9b204cb12991013f84ffe0bfa64ac14.zip
Output chain: zero size buf alerts in ngx_chain_writer().
Now we log a "zero size buf in chain writer" alert if we encounter a zero sized buffer in ngx_chain_writer(), and skip the buffer.
Diffstat (limited to 'src')
-rw-r--r--src/core/ngx_output_chain.c33
1 files changed, 32 insertions, 1 deletions
diff --git a/src/core/ngx_output_chain.c b/src/core/ngx_output_chain.c
index 3bc0a307c..5260c5f66 100644
--- a/src/core/ngx_output_chain.c
+++ b/src/core/ngx_output_chain.c
@@ -663,7 +663,23 @@ ngx_chain_writer(void *data, ngx_chain_t *in)
#if 1
if (ngx_buf_size(in->buf) == 0 && !ngx_buf_special(in->buf)) {
+
+ ngx_log_error(NGX_LOG_ALERT, ctx->pool->log, 0,
+ "zero size buf in chain writer "
+ "t:%d r:%d f:%d %p %p-%p %p %O-%O",
+ in->buf->temporary,
+ in->buf->recycled,
+ in->buf->in_file,
+ in->buf->start,
+ in->buf->pos,
+ in->buf->last,
+ in->buf->file,
+ in->buf->file_pos,
+ in->buf->file_last);
+
ngx_debug_point();
+
+ continue;
}
#endif
@@ -691,9 +707,24 @@ ngx_chain_writer(void *data, ngx_chain_t *in)
#if 1
if (ngx_buf_size(cl->buf) == 0 && !ngx_buf_special(cl->buf)) {
+
+ ngx_log_error(NGX_LOG_ALERT, ctx->pool->log, 0,
+ "zero size buf in chain writer "
+ "t:%d r:%d f:%d %p %p-%p %p %O-%O",
+ cl->buf->temporary,
+ cl->buf->recycled,
+ cl->buf->in_file,
+ cl->buf->start,
+ cl->buf->pos,
+ cl->buf->last,
+ cl->buf->file,
+ cl->buf->file_pos,
+ cl->buf->file_last);
+
ngx_debug_point();
- }
+ continue;
+ }
#endif
size += ngx_buf_size(cl->buf);