[DragonFlyBSD - Bug #2263] (Resolved) nginx loses/garbles data if buffering to disk

bugtracker-admin at leaf.dragonflybsd.org bugtracker-admin at leaf.dragonflybsd.org
Sat Aug 23 11:03:17 PDT 2014


Issue #2263 has been updated by jorisgio.

Description updated
Status changed from New to Resolved

Fixed in 799312a2b6e22a583d98633ea6b62146afa8eb45

----------------------------------------
Bug #2263: nginx loses/garbles data if buffering to disk
http://bugs.dragonflybsd.org/issues/2263#change-12210

* Author: matthiasr
* Status: Resolved
* Priority: Normal
* Assignee: 
* Category: 
* Target version: 
----------------------------------------
I recently moved my web server to DragonFly and noticed that for very large responses from a web app accessed through nginx via fastcgi_pass or proxy_pass parts of the response are lost. This happens in the middle of the response, at more or less random locations (more towards the end). It used to work fine on Debian Linux.

I suspect that this is related to nginx buffering large responses to disk. I have created a testcase (test file, although anything large enough would work; nginx config snippet, repeated test download script, see attachments). With proxy_buffers left at the default, the downloaded file2.txt differs every few attempts. With the buffer size cranked up it works reliably. Both variants work reliably on OS X.

Note that this is also almost a Heisenbug – it takes a lot more tries until something goes wrong while ktrace'ing. ktrace available at http://2pktfkt.de/dfly/nginx_ktrace.out (~300MB – also http://2pktfkt.de/dfly/nginx_ktrace.out.xz soon)

---Files--------------------------------
file1.txt (586 KB)
localhost.conf (293 Bytes)
test.sh (188 Bytes)
ktrace.out.xz (640 KB)


-- 
You have received this notification because you have either subscribed to it, or are involved in it.
To change your notification preferences, please click here: http://bugs.dragonflybsd.org/my/account




More information about the Bugs mailing list