* cc: Kronuz (added)
* ui_ux: => 0
* type: => Uncategorized
* severity: => Normal
* easy: => 0
--
Ticket URL: <https://code.djangoproject.com/ticket/4444#comment:24>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
Comment (by imagei):
So here we are, 7 years later and this still happens. Google and
StackOverflow point to this bug report but it seems a dead end now -- can
someone point towards an active mailing list discussion or another, active
ticket please?
I appreciate this is technically nobody's fault but Django happens to
print the message so it gets the blame.
This is massively distracting during development when each time I reload a
page I have to check whether it's Django printing its usual garbage or
something *actually* exploded.
These strack traces all over the place are ugly and affect productivity so
I hope it doesn't get swept under the rug.
File "/usr/lib/python2.7/SocketServer.py", line 582, in
process_request_thread
self.finish_request(request, client_address)
File "/usr/lib/python2.7/SocketServer.py", line 323, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/usr/local/lib/python2.7/site-
packages/django/core/servers/basehttp.py", line 150, in _init_
super(WSGIRequestHandler, self)._init_(*args, **kwargs)
File "/usr/lib/python2.7/SocketServer.py", line 640, in _init_
self.finish()
File "/usr/lib/python2.7/SocketServer.py", line 693, in finish
self.wfile.flush()
File "/usr/lib/python2.7/socket.py", line 303, in flush
self._sock.sendall(view[write_offset:write_offset+buffer_size])
error: [Errno 32] Broken pipe
--
Ticket URL: <https://code.djangoproject.com/ticket/4444#comment:25>
Comment (by shai):
I am not aware of any active discussion of this issue, but if you want to
change the current resolution, please start one on the
DevelopersMailingList.
--
Ticket URL: <https://code.djangoproject.com/ticket/4444#comment:26>
Comment (by dracos):
Just as an update - as requested, I started a thread on the mailing list
which can be seen at https://groups.google.com/forum/#!topic/django-
developers/_oC_PAxxnQI , and I have made a pull request which can be found
at https://github.com/django/django/pull/3121 .
--
Ticket URL: <https://code.djangoproject.com/ticket/4444#comment:27>
* status: closed => new
* resolution: wontfix =>
* type: Uncategorized => Cleanup/optimization
* stage: Unreviewed => Accepted
Comment:
Worth a review...
--
Ticket URL: <https://code.djangoproject.com/ticket/4444#comment:28>
* needs_better_patch: 0 => 1
Comment:
I am not really happy with that patch which copies the
`simple_server.WSGIRequestHandler.handle()` method from Python's version
in order to override it. The copied version is not in sync with the latest
Python and I'd prefer not to be in a position where we'd have to copy
changes from there to Django.
--
Ticket URL: <https://code.djangoproject.com/ticket/4444#comment:29>
* status: new => closed
* resolution: => fixed
Comment:
In [changeset:"9253042d53d61b23b3f727a00c41e8089be73836"]:
{{{
#!CommitTicketReference repository=""
revision="9253042d53d61b23b3f727a00c41e8089be73836"
Fixed #4444 - Made runserver suppress 'broken pipe' errors
One handler in WSGIServer, to catch the error when raised from
SocketServer.BaseServer's finish_request, and one in WSGIRequestHandler
(by creating a subclass of ServerHandler), to catch the error when
raised in wsgiref.handlers.BaseHandler's finish_response.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/4444#comment:30>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"28124e7bdf165689f92d667af1b77169ec75486c" 28124e7b]:
{{{
#!CommitTicketReference repository=""
revision="28124e7bdf165689f92d667af1b77169ec75486c"
Refs #4444 -- Added tests for handling broken pipe errors in WSGIServer.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/4444#comment:31>