bzr push reporting AssertionError on terminal
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
Fix Released
|
High
|
Unassigned |
Bug Description
mwh@grond:
Using saved push location: bzr+ssh:
Traceback (most recent call last):
File "/srv/bazaar.
...
File "/usr/lib/
raise Fault(*
xmlrpclib.Fault: <Fault -1: 'Unexpected Zope exception: AssertionError: '>
No new revisions to push.
HPSS calls: 12 (0 vfs) SmartSSHClientM
OOPS-1777XMLP119 is if not my oops, an example of the same problem.
Things to note:
1) the traceback is being printed to stderr by the bzr serve process on the server
2) the assertionerror is being raised by a call to transaction.doom() that's in an "except (RequestExpired, TimeoutError):" block
3) the sql log in the oops reports a gap of 15s between sql requests (so a timeout is legitimate, although something funny is going on)
4) that assertionerror is raised when the transaction is not "active" or already "doomed". The other possible statuses are "committing", "committed" or "commitfailed". I don't know which.
The XMLRPC internal server was suffering a high rate of OOPSes / timeouts and its these that are being shown on the codehosting front end and passed onto the user.
We believe it is a load/timeout issue on one specific internal server.
=======
We think this is fixed: we've reconfigured the backend xmlrpc service to be served from our primary appserver cluster, so there are now 13 times the resources available for it; we've further fine tuning and capacity management to do, but the basic situation should be remedied.
*please* comment here if you encounter zope assertion error, so that we can tell the bug isn't fixed.
summary: |
- bzr push occasionally reports AssertionError on terminal + bzr push reporting AssertionError on terminal |
description: | updated |
description: | updated |
description: | updated |
tags: | added: oem-services |
Changed in launchpad-code: | |
status: | Triaged → In Progress |
description: | updated |
There is an RT to have all the app servers provide internal xmlrpc access. This should fix what we are mostly guessing right now is the thread starvation that is going on here.