hydra-queue-runner: More stats

[?]
Jun 22, 2015, 1:34 PM
63W4T5PUSRHU53CVVTVRWAQX6T74RIHH636NCGUGPN3YFVMC3VTAC

Dependencies

  • [2] HUUZFPPK Fix race between the queue monitor and the builder threads
  • [3] PLOZBRTR Add command ‘hydra-queue-runner --status’ to show current status
  • [4] OCZ4LSGG Automatically retry aborted builds
  • [5] GS4BE6TB Asynchronously compress build logs
  • [6] RYTQLATY Keep track of failed paths in the Hydra database
  • [7] NIXRSHRK Fix finishing steps that are not top-level of any build
  • [8] 5AIYUMTB Basic remote building
  • [9] ENXUSMSV Make concurrency more robust
  • [10] YZAI5GQU Implement a database connection pool
  • [11] 24BMQDZA Start of single-process hydra-queue-runner
  • [*] PQFOMNTL hydra-queue-runner: More stats
  • [*] QJRDO2B4 Simplify retry handling

Change contents

  • edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 251
    [13.187]
    [13.187]
    counter totalStepTime{0}; // total time for steps, including closure copying
    counter totalStepBuildTime{0}; // total build time for steps
  • replacement in src/hydra-queue-runner/hydra-queue-runner.cc at line 1045
    [4.4098][4.7680:7770](),[4.7680][4.7680:7770]()
    printMsg(lvlInfo, format("cancelling build step ‘%1%’") % step->drvPath);
    [4.4098]
    [4.4099]
    printMsg(lvlInfo, format("maybe cancelling build step ‘%1%’") % step->drvPath);
  • replacement in src/hydra-queue-runner/hydra-queue-runner.cc at line 1064
    [4.141][4.13268:13300](),[4.13268][4.13268:13300]()
    result.startTime = time(0);
    [4.141]
    [4.142]
    time_t stepStartTime = result.startTime = time(0);
  • replacement in src/hydra-queue-runner/hydra-queue-runner.cc at line 1096
    [4.16048][4.1476:1529]()
    if (!result.stopTime) result.stopTime = time(0);
    [4.16048]
    [4.1096]
    time_t stepStopTime = time(0);
    if (!result.stopTime) result.stopTime = stepStopTime;
  • edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 1157
    [2.4336][2.4336:4371]()
    nrStepsDone++;
  • edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 1227
    [2.6619][2.6619:6658]()
    nrStepsDone++;
  • edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 1302
    [4.9570]
    [14.2182]
    nrStepsDone++;
    totalStepTime += stepStopTime - stepStartTime;
    totalStepBuildTime += result.stopTime - result.startTime;
  • edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 1452
    [3.1458]
    [3.1458]
    root.attr("totalStepTime", totalStepTime);
    root.attr("totalStepBuildTime", totalStepBuildTime);
    if (nrStepsDone) {
    root.attr("avgStepTime"); out << (float) totalStepTime / nrStepsDone;
    root.attr("avgStepBuildTime"); out << (float) totalStepBuildTime / nrStepsDone;
    }