IBuilder.updateBuild() needs to be asynchronous
Bug #611258 reported by
Julian Edwards
This bug affects 2 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
Fix Released
|
Low
|
Julian Edwards |
Bug Description
The buildd-manager calls this method at the beginning of scanning each builder that is currently building something. It's currently synchronous, which means that it blocks everything else in the buildd-manager until it completes.
It would benefit from being converted to using Twisted Deffereds similar to the dispatch mechanism. Initially this can be a simple case of extending the RecordingSlave that the manager uses to wrap the normal (synchronous) slave class but ultimately we should ditch RecordingSlave and make the existing one entirely asynchronous.
Related branches
lp:~julian-edwards/launchpad/builderslave-resume
- Jonathan Lange (community): Approve
-
Diff: 7192 lines (+2211/-3509)24 files modifiedlib/lp/buildmaster/doc/builder.txt (+2/-118)
lib/lp/buildmaster/interfaces/builder.py (+83/-62)
lib/lp/buildmaster/manager.py (+205/-469)
lib/lp/buildmaster/model/builder.py (+240/-224)
lib/lp/buildmaster/model/buildfarmjobbehavior.py (+60/-52)
lib/lp/buildmaster/model/packagebuild.py (+6/-0)
lib/lp/buildmaster/tests/mock_slaves.py (+157/-32)
lib/lp/buildmaster/tests/test_builder.py (+582/-154)
lib/lp/buildmaster/tests/test_manager.py (+248/-782)
lib/lp/buildmaster/tests/test_packagebuild.py (+12/-0)
lib/lp/code/model/recipebuilder.py (+32/-28)
lib/lp/soyuz/browser/tests/test_builder_views.py (+1/-1)
lib/lp/soyuz/doc/buildd-dispatching.txt (+0/-371)
lib/lp/soyuz/doc/buildd-slavescanner.txt (+0/-876)
lib/lp/soyuz/model/binarypackagebuildbehavior.py (+59/-41)
lib/lp/soyuz/tests/test_binarypackagebuildbehavior.py (+290/-8)
lib/lp/soyuz/tests/test_doc.py (+0/-6)
lib/lp/testing/factory.py (+8/-2)
lib/lp/translations/doc/translationtemplatesbuildbehavior.txt (+0/-114)
lib/lp/translations/model/translationtemplatesbuildbehavior.py (+20/-14)
lib/lp/translations/stories/buildfarm/xx-build-summary.txt (+1/-1)
lib/lp/translations/tests/test_translationtemplatesbuildbehavior.py (+202/-153)
lib/lp_sitecustomize.py (+3/-0)
utilities/migrater/file-ownership.txt (+0/-1)
lp:~bac/launchpad/rollback-11801
Rejected
for merging
into
lp:launchpad
- Brad Crittenden (community): Approve (code)
Changed in soyuz: | |
assignee: | nobody → Julian Edwards (julian-edwards) |
status: | Triaged → In Progress |
tags: | added: bad-commit-11801 |
tags: |
added: qa-ok removed: qa-needstesting |
tags: | added: buildd-scalability |
Changed in soyuz: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
Fixed in stable r11801 <http:// bazaar. launchpad. net/~launchpad- pqm/launchpad/ stable/ revision/ 11801>.