There are many questions about this on django-users. The usual answer
is to ignore the errors, which are probably generated as a result of
the client prematurely terminating a connection, usually during an
upload.

Nobody seems to be able to reliably reproduce the error, and it seems
to happen with large and small uploads alike, but always
intermittently.

It has been suggested that a client dropping the connection should be
within what one can expect from a networked client, and thus Django
should not email the exception and traceback to the admins in this
case. From my preliminary investigation with this issue, I tend to
agree.

Is it feasible to handle this exception in Django, or are there other
issues that would prevent us from isolating this case from other
legitimate exceptions that may be raised at this point?

Here's a recent traceback:

Traceback (most recent call last):

 File "/home/tailee/django/core/handlers/base.py", line 105, in
get_response
   response = middleware_method(request, callback, callback_args,
callback_kwargs)

 File "/home/tailee/django/middleware/csrf.py", line 224, in
process_view
   request_csrf_token = request.POST.get('csrfmiddlewaretoken', '')

 File "/home/tailee/django/core/handlers/wsgi.py", line 209, in
_get_post
   self._load_post_and_files()

 File "/home/tailee/django/http/__init__.py", line 207, in
_load_post_and_files
   self._post, self._files = self.parse_file_upload(self.META, self)

 File "/home/tailee/django/http/__init__.py", line 169, in
parse_file_upload
   return parser.parse()

 File "/home/tailee/django/http/multipartparser.py", line 192, in
parse
   for chunk in field_stream:

 File "/home/tailee/django/http/multipartparser.py", line 314, in next
   output = self._producer.next()

 File "/home/tailee/django/http/multipartparser.py", line 468, in next
   for bytes in stream:

 File "/home/tailee/django/http/multipartparser.py", line 314, in next
   output = self._producer.next()

 File "/home/tailee/django/http/multipartparser.py", line 375, in next
   data = self.flo.read(self.chunk_size)

 File "/home/tailee/django/http/multipartparser.py", line 405, in read
   return self._file.read(num_bytes)

 File "/home/tailee/django/http/__init__.py", line 231, in read
   return self._stream.read(*args, **kwargs)

IOError: request data read error

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers" group.
To post to this group, send email to django-developers@googlegroups.com.
To unsubscribe from this group, send email to 
django-developers+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-developers?hl=en.

Reply via email to