* Fix the terminology.
[?]
Nov 28, 2008, 11:16 AM
DQD7JMSUAPXKASPXUDXY4LCE6QCAZSGWNQYTOKNIQE6RRSRP4KGACDependencies
- [2]
R5D7DZPE - [3]
D7TT2BNK - [4]
WM5WAST3* Monitor for dead builds all the time. - [5]
L2E6EVE2* Merged the Build and Job tables. - [6]
WHAFVCEI - [7]
JK2QWPH6 - [8]
NREF6YOA* Don't start more builds concurrently than allowed for each system - [9]
TWVSALRL* Allow the maximum number of concurrent builds per platform to be - [10]
CURCK6C2 - [11]
TULPZ62Y* Perform builds in parallel. - [12]
7YBYT2LQ
Change contents
- replacement in src/Hydra/programs/Runner.pl at line 14
sub unlockDeadJobs {# Unlock jobs whose building process has died.sub unlockDeadBuilds {# Unlock builds whose building process has died. - replacement in src/Hydra/programs/Runner.pl at line 17
my @jobs = $db->resultset('Builds')->search(my @builds = $db->resultset('Builds')->search( - replacement in src/Hydra/programs/Runner.pl at line 19
foreach my $job (@jobs) {my $pid = $job->schedulingInfo->locker;foreach my $build (@builds) {my $pid = $build->schedulingInfo->locker; - replacement in src/Hydra/programs/Runner.pl at line 22
print "job ", $job->id, " pid $pid died, unlocking\n";$job->schedulingInfo->busy(0);$job->schedulingInfo->locker("");$job->schedulingInfo->update;print "build ", $build->id, " pid $pid died, unlocking\n";$build->schedulingInfo->busy(0);$build->schedulingInfo->locker("");$build->schedulingInfo->update; - replacement in src/Hydra/programs/Runner.pl at line 32
sub checkJobs {print "looking for runnable jobs...\n";sub checkBuilds {print "looking for runnable builds...\n"; - replacement in src/Hydra/programs/Runner.pl at line 35
my @jobsStarted;my @buildsStarted; - replacement in src/Hydra/programs/Runner.pl at line 61
my @jobs = $extraAllowed == 0 ? () : $db->resultset('Builds')->search(my @builds = $extraAllowed == 0 ? () : $db->resultset('Builds')->search( - replacement in src/Hydra/programs/Runner.pl at line 68
"starting ", scalar(@jobs), " builds\n";"starting ", scalar(@builds), " builds\n"; - replacement in src/Hydra/programs/Runner.pl at line 70
foreach my $job (@jobs) {my $logfile = getcwd . "/logs/" . $job->id;foreach my $build (@builds) {my $logfile = getcwd . "/logs/" . $build->id; - replacement in src/Hydra/programs/Runner.pl at line 73[3.94]→[5.1592:1746](∅→∅),[5.132]→[5.1592:1746](∅→∅),[5.1592]→[5.1592:1746](∅→∅),[5.1746]→[2.2367:2422](∅→∅),[2.2422]→[5.1746:1879](∅→∅),[5.1746]→[5.1746:1879](∅→∅)
$job->schedulingInfo->busy(1);$job->schedulingInfo->locker($$);$job->schedulingInfo->logfile($logfile);$job->schedulingInfo->starttime(time);$job->schedulingInfo->update;$job->buildsteps->delete_all;push @jobsStarted, $job;$build->schedulingInfo->busy(1);$build->schedulingInfo->locker($$);$build->schedulingInfo->logfile($logfile);$build->schedulingInfo->starttime(time);$build->schedulingInfo->update;$build->buildsteps->delete_all;push @buildsStarted, $build; - replacement in src/Hydra/programs/Runner.pl at line 86[5.2036]→[5.2036:2073](∅→∅),[5.2073]→[5.336:363](∅→∅),[5.8957]→[5.336:363](∅→∅),[5.363]→[5.2848:2955](∅→∅)
foreach my $job (@jobsStarted) {my $id = $job->id;print "starting job $id (", $job->project->name, ":", $job->attrname, ") on ", $job->system, "\n";foreach my $build (@buildsStarted) {my $id = $build->id;print "starting build $id (", $build->project->name, ":", $build->attrname, ") on ", $build->system, "\n"; - replacement in src/Hydra/programs/Runner.pl at line 90
my $logfile = $job->schedulingInfo->logfile;my $logfile = $build->schedulingInfo->logfile; - replacement in src/Hydra/programs/Runner.pl at line 99
warn "cannot start job " . $id;warn "cannot start build " . $id; - replacement in src/Hydra/programs/Runner.pl at line 106
$job->schedulingInfo->busy(0);$job->schedulingInfo->locker($$);$job->schedulingInfo->update;$build->schedulingInfo->busy(0);$build->schedulingInfo->locker($$);$build->schedulingInfo->update; - replacement in src/Hydra/programs/Runner.pl at line 117
unlockDeadJobs;checkJobs;unlockDeadBuilds;checkBuilds;