Edgewall Software
Modify

Ticket #9324 (closed defect: wontfix)

Opened 21 months ago

Last modified 14 months ago

[PATCH] tracd regularly shows timeout exceptions with full traceback

Reported by: pipern Owned by:
Priority: normal Milestone:
Component: web frontend/tracd Version: 0.12dev
Severity: minor Keywords: needinfo, patch
Cc: pipern, thijstriemstra
Release Notes:
API Changes:

Description

This appears related to #1183, but as that's been closed a while I thought to create a new ticket.

We regularly get these exceptions thrown by tracd:

----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 54647)
Traceback (most recent call last):
  File "/usr/lib/python2.5/SocketServer.py", line 464, in process_request_thread
    self.finish_request(request, client_address)
  File "/usr/lib/python2.5/SocketServer.py", line 254, in finish_request
    self.RequestHandlerClass(request, client_address, self)
  File "/usr/lib/python2.5/SocketServer.py", line 522, in __init__
    self.handle()
  File "/usr/lib/python2.5/BaseHTTPServer.py", line 318, in handle
    self.handle_one_request()
  File "/..../trac/trac/web/wsgi.py", line 179, in handle_one_request
    environ = self.setup_environ()
  File "/..../trac/trac/web/wsgi.py", line 129, in setup_environ
    self.raw_requestline = self.rfile.readline()
  File "/usr/lib/python2.5/socket.py", line 381, in readline
    data = self._sock.recv(self._rbufsize)
timeout: timed out
----------------------------------------

This is at the Trac trunk at r9337.

Trac appears to be working normally, but a few moments after the page is loaded in the browser, one or more of these exceptions appears. This is with several different browsers, but I personally use Firefox 3.0.x and 3.5.x.

I use Debian, and 2.5.5.

I have applied the attached patch to our local installation to resolve this.

Attachments

changeset_r198.diff (738 bytes) - added by pipern 21 months ago.
Catch and handle socket.timeout exception that setup_environ() can throw when HTTP client is inactive

Download all attachments as: .zip

Change History

Changed 21 months ago by pipern

Catch and handle socket.timeout exception that setup_environ() can throw when HTTP client is inactive

comment:1 Changed 21 months ago by cboos

I don't think those timeouts are normal, therefore silencing the exception doesn't feel right.
You should rather try to figure out for which requests tracd is timing out, and why. You could use Firebug to see what happens in more details, or even set up a TCP tunnel using e.g. NetTool.

comment:2 Changed 21 months ago by pipern

  • Cc pipern added

Thanks for your advice, we shall investigate further.

comment:3 Changed 17 months ago by cboos

  • Keywords needinfo added

comment:4 Changed 17 months ago by pipern

This appears to have been applied (to a slightly different place) in [9342]

comment:5 Changed 14 months ago by thijstriemstra

  • Cc thijstriemstra added
  • Keywords needinfo, patch added; needinfo removed
  • Summary changed from tracd regularly shows timeout exceptions with full traceback [PATCH] to [PATCH] tracd regularly shows timeout exceptions with full traceback

comment:6 Changed 14 months ago by cboos

  • Resolution set to wontfix
  • Status changed from new to closed

Well, the socket.timeout exception as such is still not trapped, but no one else has reported a problem with that...

If someone can demonstrate this is a real and reproducible issue, please reopen.

View

Add a comment

Modify Ticket

Change Properties
<Author field>
Action
as closed
The resolution will be deleted. Next status will be 'reopened'
to The owner will be changed from (none). Next status will be 'closed'
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.