I'm facing a strange issue with file uploads in the new release. Anytime I try to upload files bigger than 100k or so, the upload hangs forever. Nothing returned to the client, the upload just stalls.
If I stop the request, I get a traceback from my Django app showing that it hanged at consuming the input stream [1]. I'm guessing this is somehow related to X-Sendfile, as it plays with content-length? But actually in my config I have X-Sendfile disabled. I'm puzzled on this and have no idea where to look further. In fact, I had this in production and this bug slipped by, so I had to setup a brand new Amazon EC2 server with Cherokee 0.99.19 to get things back to normal. This means that I'm kinda blocked on this release (and its bugs) until I get it sorted out. Could this be related to upgrading from 0.99.19 to 0.99.44? Cherokee warned me about an error on the config file, which I went and corrected manually. After that it launched, so I'm assuming there weren't other erros. I'm deploying with Ubuntu 9.10 server. The issue happens on both 32bit and 64bit. Any help appreciated, it might be an error from my side too, maybe a misconfig. [1] Traceback: === Traceback (most recent call last): File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/django/core/handlers/base.py", line 92, in get_response response = callback(request, *callback_args, **callback_kwargs) File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/django/contrib/auth/decorators.py", line 78, in __call__ return self.view_func(request, *args, **kwargs) File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/django/db/transaction.py", line 240, in _commit_on_success res = func(*args, **kw) File "/mnt/storage/live/colibri/property/views.py", line 205, in edit property_form = PropertyForm(prefix='property', data=request.POST, instance=property) File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/django/core/handlers/wsgi.py", line 171, in _get_post self._load_post_and_files() File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/django/core/handlers/wsgi.py", line 137, in _load_post_and_files self._post, self._files = self.parse_file_upload(self.META, self.environ['wsgi.input']) File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/django/http/__init__.py", line 124, in parse_file_upload return parser.parse() File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/django/http/multipartparser.py", line 192, in parse for chunk in field_stream: File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/django/http/multipartparser.py", line 314, in next output = self._producer.next() File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/django/http/multipartparser.py", line 468, in next for bytes in stream: File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/django/http/multipartparser.py", line 314, in next output = self._producer.next() File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/django/http/multipartparser.py", line 375, in next data = self.flo.read(self.chunk_size) File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/django/http/multipartparser.py", line 405, in read return self._file.read(num_bytes) File "/usr/lib/pymodules/python2.6/flup/server/fcgi_base.py", line 161, in read self._waitForData() File "/usr/lib/pymodules/python2.6/flup/server/fcgi_base.py", line 147, in _waitForData self._conn.process_input() File "/usr/lib/pymodules/python2.6/flup/server/fcgi_base.py", line 673, in process_input rec.read(self._sock) File "/usr/lib/pymodules/python2.6/flup/server/fcgi_base.py", line 474, in read raise EOFError === _______________________________________________ Cherokee mailing list [email protected] http://lists.octality.com/listinfo/cherokee
