Selenium tests failing with socket timeout error

Bug #1100771 reported by Julie Pichon
24
This bug affects 4 people
Affects Status Importance Assigned to Milestone
OpenStack Dashboard (Horizon)
Fix Released
Wishlist
Kieran Spear
Grizzly
Fix Released
Wishlist
Kieran Spear

Bug Description

The Selenium tests intermittently fail with a socket timeout error, e.g.:

09:30:03 File "/home/jenkins/workspace/gate-horizon-selenium/.tox/venv/local/lib/python2.7/site-packages/django/test/testcases.py", line 981, in _handle_request_noblock
09:30:03 self.process_request(request, client_address)
09:30:03 File "/usr/lib/python2.7/SocketServer.py", line 310, in process_request
09:30:03 self.finish_request(request, client_address)
09:30:03 File "/usr/lib/python2.7/SocketServer.py", line 323, in finish_request
09:30:03 self.RequestHandlerClass(request, client_address, self)
09:30:03 File "/home/jenkins/workspace/gate-horizon-selenium/.tox/venv/local/lib/python2.7/site-packages/django/core/servers/basehttp.py", line 139, in __init__
09:30:03 super(WSGIRequestHandler, self).__init__(*args, **kwargs)
09:30:03 File "/usr/lib/python2.7/SocketServer.py", line 638, in __init__
09:30:03 self.handle()
09:30:03 File "/usr/lib/python2.7/wsgiref/simple_server.py", line 116, in handle
09:30:04 self.raw_requestline = self.rfile.readline()
09:30:04 File "/usr/lib/python2.7/socket.py", line 447, in readline
09:30:04 data = self._sock.recv(self._rbufsize)
09:30:04 timeout: timed out

I'm not sure if there is much we can do about it, but it would be useful to at least track this behaviour with the new "recheck/reverify bug ###" syntax.

Revision history for this message
Gabriel Hurley (gabriel-hurley) wrote :

Agreed, but as you say, I'm not sure there's a lot to be done about it. Jenkins has always been flaky and this is just the latest incarnation. I'll leave the ticket open to track.

Changed in horizon:
assignee: nobody → Gabriel Hurley (gabriel-hurley)
importance: Undecided → Wishlist
status: New → Triaged
Revision history for this message
James E. Blair (corvus) wrote :

To be clear, I don't think Jenkins is being flaky, there's almost certainly something about the test case that could be improved. It might be difficult to track down and fix, of course.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to horizon (master)

Fix proposed to branch: master
Review: https://review.openstack.org/26056

Changed in horizon:
assignee: Gabriel Hurley (gabriel-hurley) → Kieran Spear (kspear)
status: Triaged → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to horizon (master)

Reviewed: https://review.openstack.org/26056
Committed: http://github.com/openstack/horizon/commit/5e58a7e388bf593861a63409ee3ccc20b868a9b5
Submitter: Jenkins
Branch: master

commit 5e58a7e388bf593861a63409ee3ccc20b868a9b5
Author: Kieran Spear <email address hidden>
Date: Wed Apr 3 15:11:34 2013 +1100

    Increase socket timeout for selenium tests

    I can reproduce bug 1100771 consistently in my development environment.
    Increasing the socket timeout in the SeleniumTestCase class fixes
    the timeout issue for me.

    This uncovers another issue that causes an "Address already in use
    error". This happens because the order of tear down is wrong - we
    need to quit() the driver before continuing with tear down rather
    than after.

    Fixes bug 1100771.

    Change-Id: I95fbea05c3fc2516ce4e736eea9b0823bb5bbf79

Changed in horizon:
status: In Progress → Fix Committed
Kieran Spear (kspear)
Changed in horizon:
milestone: none → havana-1
Thierry Carrez (ttx)
Changed in horizon:
status: Fix Committed → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to horizon (stable/grizzly)

Fix proposed to branch: stable/grizzly
Review: https://review.openstack.org/31142

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to horizon (stable/grizzly)

Reviewed: https://review.openstack.org/31142
Committed: http://github.com/openstack/horizon/commit/48648808e8d06377de0580f47959b07925f768d9
Submitter: Jenkins
Branch: stable/grizzly

commit 48648808e8d06377de0580f47959b07925f768d9
Author: Kieran Spear <email address hidden>
Date: Wed Apr 3 15:11:34 2013 +1100

    Increase socket timeout for selenium tests

    I can reproduce bug 1100771 consistently in my development environment.
    Increasing the socket timeout in the SeleniumTestCase class fixes
    the timeout issue for me.

    This uncovers another issue that causes an "Address already in use
    error". This happens because the order of tear down is wrong - we
    need to quit() the driver before continuing with tear down rather
    than after.

    Fixes bug 1100771.

    Change-Id: I95fbea05c3fc2516ce4e736eea9b0823bb5bbf79
    (cherry picked from commit 5e58a7e388bf593861a63409ee3ccc20b868a9b5)

Thierry Carrez (ttx)
Changed in horizon:
milestone: havana-1 → 2013.2
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.