Speed up the jobset eval list a bit
[?]
Apr 15, 2012, 10:11 PM
KJC7RKIEGIR62HPUILVCORKOFYTIAVNPHU3U2CDS36ZEQA7T7UBACDependencies
- [2]
HFJPPMTUCleanup - [3]
KG5AMUMGCleanup - [4]
RSEGBU6CHydra/20: Jobset clone feature - [5]
RWFCW6ZNIn the jobset evals lists, show what inputs changed between consecutive evals - [6]
Q4VDOA76Replace last 5 builds on jobset page with last 5 evaluations. Moved hide/unhide and evaluate options to jobset topmenu. - [*]
3HZY24CX* Make jobsets viewable under - [*]
IK53RV4V
Change contents
- replacement in src/lib/Hydra/Controller/Jobset.pm at line 333[3.200]→[3.200:896](∅→∅),[3.896]→[3.117:145](∅→∅),[3.145]→[3.920:948](∅→∅),[3.920]→[3.920:948](∅→∅),[3.948]→[3.146:158](∅→∅)
{ order_by => "id DESC", '+select' => # !!! Slow - should precompute this.[ "(select count(*) from JobsetEvalMembers where eval = me.id)", "(select count(*) from JobsetEvalMembers where eval = me.id and exists(select 1 from Builds b where b.id = build and b.finished = 0))", "(select count(*) from JobsetEvalMembers where eval = me.id and exists(select 1 from Builds b where b.id = build and b.finished = 1))", "(select count(*) from JobsetEvalMembers where eval = me.id and exists(select 1 from Builds b where b.id = build and b.finished = 1 and b.buildStatus = 0))"], '+as' => [ "nrBuilds", "nrScheduled", "nrFinished", "nrSucceeded" ], rows => $rows + 1, offset => $offset});{ order_by => "id DESC", rows => $rows + 1, offset => $offset }); - edit in src/lib/Hydra/Controller/Jobset.pm at line 337
my $prev; - replacement in src/lib/Hydra/Controller/Jobset.pm at line 340
my $prev = $evals[$n + 1];# Get stats for this eval.my $nrBuilds = $cur->jobsetevalmembers->count;my $nrScheduled = $cur->builds->search({finished => 0})->count;my $nrSucceeded = $cur->builds->search({finished => 1, buildStatus => 0})->count; - replacement in src/lib/Hydra/Controller/Jobset.pm at line 359
push @res,my $e = - replacement in src/lib/Hydra/Controller/Jobset.pm at line 362
, diff => defined $prev ? $cur->get_column("nrSucceeded") - $prev->get_column("nrSucceeded") : 0, nrBuilds => $nrBuilds, nrScheduled => $nrScheduled, nrSucceeded => $nrSucceeded, nrFailed => $nrBuilds - $nrSucceeded - $nrScheduled, diff => defined $prev ? $nrSucceeded - $prev->{nrSucceeded} : 0 - edit in src/lib/Hydra/Controller/Jobset.pm at line 369
push @res, $e if $n < $rows;$prev = $e; - replacement in src/lib/Hydra/Controller/Jobset.pm at line 373
return [(reverse @res)[0..$rows - 1]];return [reverse @res]; - replacement in src/root/common.tt at line 442
<span class="label label-success">[% eval.get_column('nrSucceeded') %]</span><span class="label label-important">[% eval.get_column('nrBuilds') - eval.get_column('nrSucceeded') - eval.get_column('nrScheduled') %]</span>[% IF eval.get_column('nrScheduled') > 0 %]<span class="label">[% eval.get_column('nrScheduled') %]</span><span class="label label-success">[% e.nrSucceeded %]</span><span class="label label-important">[% e.nrFailed %]</span>[% IF e.nrScheduled > 0 %]<span class="label">[% e.nrScheduled %]</span> - replacement in src/root/common.tt at line 451
[%- ELSIF e.diff < 0 && eval.get_column('nrScheduled') == 0 -%][%- ELSIF e.diff < 0 && e.nrScheduled == 0 -%]