Cleanup

[?]
Apr 15, 2012, 6:47 PM
KG5AMUMGZA53FMA35K3KYOPJTNG3BKWDFWDPVXJ6XGG2GJJRI2LAC

Dependencies

  • [2] 3U3CXCDW Nicer link to the rest of the jobset evals
  • [3] 6QRHXIM3 * Speed up the jobset index page. Especially the query to get the
  • [4] UXXFND4U Add a redirect to the latest finished jobset evaluation
  • [5] G4X5IUYJ Remove default logo, replaced by text for now. Hide template in jobset edit.
  • [6] U4TD3AIQ Add support for viewing jobset evaluations
  • [7] OEPUOUNB Using twitter bootstrap for more consistent looks for Hydra
  • [8] RSEGBU6C Hydra/20: Jobset clone feature
  • [9] Q4VDOA76 Replace last 5 builds on jobset page with last 5 evaluations. Moved hide/unhide and evaluate options to jobset topmenu.
  • [10] DE2DNCOI Allow comparing an evaluation with an arbitrary other evaluation
  • [11] TJPIS3UP hydra: minor improvements in hydra ui
  • [12] UXKPFRO2 Remove the "There are evaluation errors!", instead emphasize the presence of the tab more
  • [13] 3HZY24CX * Make jobsets viewable under
  • [14] UMFB2767 Hydra/64: Leaving number of builds empty gives DBIx error
  • [*] ODNCGFQ5 * Improved the navigation bar: don't include all projects (since that

Change contents

  • replacement in src/lib/Hydra/Controller/Jobset.pm at line 52
    [3.1][3.1:798](),[3.798][3.0:20](),[3.20][3.818:837](),[3.818][3.818:837]()
    $c->stash->{evals} = [ $c->stash->{jobset}->jobsetevals->search(
    { hasnewbuilds => 1 },
    { 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 => 6
    }
    ) ];
    [3.1]
    [3.4]
    $c->stash->{evals} = getEvals($self, $c, 0, 6);
  • edit in src/lib/Hydra/Controller/Jobset.pm at line 325
    [3.1555]
    [3.1560]
    }
    sub getEvals {
    my ($self, $c, $offset, $rows) = @_;
    return [ $c->stash->{jobset}->jobsetevals->search(
    { hasnewbuilds => 1 },
    { 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
    , offset => $offset
    }
    ) ];
  • replacement in src/lib/Hydra/Controller/Jobset.pm at line 360
    [3.436][3.436:1155](),[3.1155][3.0:166](),[3.166][3.1277:1296](),[3.1277][3.1277:1296]()
    $c->stash->{evals} = [ $c->stash->{jobset}->jobsetevals->search(
    { hasnewbuilds => 1 },
    { 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 => $resultsPerPage + 1
    , offset => ($page - 1) * $resultsPerPage
    }
    ) ];
    [3.436]
    [3.1296]
    $c->stash->{evals} = getEvals($self, $c, ($page - 1) * $resultsPerPage, $resultsPerPage + 1)
  • replacement in src/root/jobset.tt at line 84
    [3.88][3.88:105]()
    [% IF !edit-%]
    [3.5335]
    [3.105]
    [% IF !edit && evals.size() > 0 -%]
  • replacement in src/root/jobset.tt at line 86
    [3.158][2.158:300]()
    [% INCLUDE renderEvals nrShown=5 linkToAll=c.uri_for(c.controller('Jobset').action_for('evals'), [project.name, jobset.name]) %]
    [3.158]
    [3.413]
    [% INCLUDE renderEvals nrShown=evals.size() - 1 linkToAll=c.uri_for(c.controller('Jobset').action_for('evals'), [project.name, jobset.name]) %]