code imports should run fewer jobs at once
Bug #497645 reported by
Michael Hudson-Doyle
This bug affects 2 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
Fix Released
|
High
|
Michael Hudson-Doyle |
Bug Description
It seems that imports using bzr-svn and bzr-git are very much more cpu bound than the cscvs imports were, and so it doesn't make sense to run more jobs on a machine than the machine has CPUs as this just leads to thrashing death.
Maybe we could even put a "number of CPUs" column on the CodeImportMachine table?
Related branches
lp:~mwhudson/launchpad/reduce-concurrent-job-count
Merged
into
lp:launchpad
- Tim Penhey (community): Approve
- Michael Nelson (community): Needs Information (code)
-
Diff: 492 lines (+93/-79)15 files modifiedcronscripts/code-import-dispatcher.py (+8/-1)
lib/canonical/config/schema-lazr.conf (+1/-1)
lib/lp/code/doc/xmlrpc-codeimport-scheduler.txt (+3/-6)
lib/lp/code/interfaces/codeimportjob.py (+1/-1)
lib/lp/code/interfaces/codeimportmachine.py (+1/-1)
lib/lp/code/interfaces/codeimportscheduler.py (+1/-1)
lib/lp/code/model/codeimportjob.py (+2/-2)
lib/lp/code/model/codeimportmachine.py (+2/-3)
lib/lp/code/model/tests/test_codeimport.py (+1/-1)
lib/lp/code/model/tests/test_codeimportjob.py (+3/-3)
lib/lp/code/model/tests/test_codeimportmachine.py (+9/-11)
lib/lp/code/xmlrpc/codeimportscheduler.py (+3/-2)
lib/lp/codehosting/codeimport/dispatcher.py (+4/-2)
lib/lp/codehosting/codeimport/tests/test_dispatcher.py (+53/-43)
lib/lp/codehosting/codeimport/tests/test_workermonitor.py (+1/-1)
tags: | added: code-import |
Changed in launchpad-code: | |
status: | Incomplete → Confirmed |
status: | Confirmed → Triaged |
importance: | Undecided → High |
Changed in launchpad-code: | |
assignee: | nobody → Michael Hudson (mwhudson) |
milestone: | none → 10.02 |
status: | Triaged → In Progress |
Changed in launchpad-code: | |
status: | In Progress → Fix Committed |
Changed in launchpad-code: | |
status: | Fix Committed → In Progress |
status: | In Progress → Fix Released |
To post a comment you must log in.
I talked about this with Aaron a little, and we decided that passing the number of CPUs on the slave to the getJobForMachine XML-RPC call would be less work. "os.sysconf( 'SC_NPROCESSORS _ONLN') " is a way to find the number of CPUs.