Merge lp:~michael.nelson/launchpad/499421-dont-grind-bm-to-a-halt into lp:launchpad
| Status: | Merged |
|---|---|
| Approved by: | Michael Nelson on 2010-02-22 |
| Approved revision: | not available |
| Merged at revision: | not available |
| Proposed branch: | lp:~michael.nelson/launchpad/499421-dont-grind-bm-to-a-halt |
| Merge into: | lp:launchpad |
| Diff against target: |
49 lines (+20/-1) 2 files modified
lib/lp/soyuz/model/buildqueue.py (+3/-0) lib/lp/soyuz/tests/test_buildqueue.py (+17/-1) |
| To merge this branch: | bzr merge lp:~michael.nelson/launchpad/499421-dont-grind-bm-to-a-halt |
| Related bugs: |
| Reviewer | Review Type | Date Requested | Status |
|---|---|---|---|
| Björn Tillenius (community) | release-critical | Approve on 2010-02-25 | |
| Eleanor Berger (community) | code | 2010-02-22 | Approve on 2010-02-22 |
|
Review via email:
|
|||
Commit Message
IBuildQueueSet.
| Michael Nelson (michael.nelson) wrote : | # |
| Michael Nelson (michael.nelson) wrote : | # |
I have QA'd this on dogfood by:
0. Patching the codebase to explicitly revert fix on dogfood
1. Adding some new sources to the queue for building,
2. Running the buildd-manager to see the new build dispatched,
3. Pausing the buildd-manager, then in a harness getting the current build and manually setting the builder attribute to None.
4. Restarting buildd-manager and verifying the exact error as seen in production (http://
5. Stopping the buildd-manager again,
7. Reverting the codebase enabling the fix
8. Restarting the buildd-manager and confirming that it carries on scanning as usual without error.
| Björn Tillenius (bjornt) wrote : | # |
This looks good from a CP point of view. I mentioned on IRC that re-using the same bug for tracking a CP and the long-term issue would be confusing, so Michael will file a new bug for the XXX comment, and update devel with the new bug number.

This branch ensures that IBuildQueueSet. getActiveBuildJ obs() returns only active build jobs that have an associated Builder.
It's related to bug 499421, and just ensures that when we do get into this situation (an active build without a builder), the buildd-manager doesn't try to updated it (and hence fall over).
Tests uildJobs_ no_builder_ bug499421
=====
bin/test -vvt test_getActiveB
We will need to QA this on dogfood.