test_operationalerror_view_integration fails intermittently in parallel tests
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
Fix Released
|
High
|
Benji York | ||
Python PGBouncer |
Triaged
|
High
|
Unassigned |
Bug Description
This is the traceback. See the attachment for the full test information
=======
ERROR: lp.services.
-------
[...]
Traceback (most recent call last):
File "/var/lib/
urllib2.
File "/usr/lib/
return _opener.open(url, data, timeout)
File "/usr/lib/
response = meth(req, response)
File "/usr/lib/
'http', request, response, code, msg, hdrs)
File "/usr/lib/
return self._call_
File "/usr/lib/
result = func(*args)
File "/usr/lib/
raise HTTPError(
HTTPError: HTTP Error 503: Service Unavailable
Related branches
- j.c.sackett (community): Approve
- Richard Harding (community): Approve (code*)
-
Diff: 59 lines (+26/-3)1 file modifiedlib/lp/services/webapp/tests/test_error.py (+26/-3)
- Benji York (community): Approve (code)
-
Diff: 95 lines (+20/-21)2 files modifiedlib/lp/services/webapp/tests/test_error.py (+4/-21)
lib/lp/testing/fixture.py (+16/-0)
- Gary Poster (community): Approve
-
Diff: 40 lines (+15/-6)1 file modifiedlib/lp/testing/fixture.py (+15/-6)
Changed in python-pgbouncer: | |
status: | New → Triaged |
importance: | Undecided → High |
Changed in launchpad: | |
assignee: | nobody → Brad Crittenden (bac) |
status: | Triaged → In Progress |
Changed in launchpad: | |
status: | Fix Committed → Fix Released |
Changed in launchpad: | |
status: | Fix Released → Triaged |
assignee: | Brad Crittenden (bac) → nobody |
summary: |
- test_operational_view_integration fails intermittently in parallel tests + test_operationalerror_view_integration fails intermittently in parallel + tests |
Changed in launchpad: | |
status: | Fix Committed → Fix Released |
Changed in launchpad: | |
status: | Fix Released → In Progress |
status: | In Progress → Triaged |
Changed in launchpad: | |
status: | Triaged → In Progress |
assignee: | Brad Crittenden (bac) → Benji York (benji) |
tags: |
added: qa-untestable removed: qa-needstesting |
Changed in launchpad: | |
status: | Triaged → Fix Committed |
status: | Fix Committed → Fix Released |
I'm not able to dupe this after repeated attempts in a non-parallel lxc lucid container. Intermittent issues often signal timing issues, and the possibility that jumps out to me is that the bouncer isn't quite started yet. In pgbouncer. fixture. PGBouncerFixtur e.start, the code waits to see the bouncer's pid. Perhaps the presence of the bouncer's pid is not sufficient to indicate that the bouncer is ready. In that case, a proper fix might be to change bouncer code so that the pid is in fact a reliable indicator; or to change the fixture to look for some other more reliable signal. A more temporary fix (and/or an easier indication that this hypothesis has merit) might be to retry the assertion in this test a few time with a time.sleep(0.5) between each attempt. Working with a pgbouncer dev might be helpful.