Keep track of the number of build steps that are being built
[?]
Jun 22, 2015, 9:23 AM
7LB6QBXYOGU43UDLJDJQZFGT4XDALULXDF3WX3WWHL7X3JTB54CQCDependencies
- [2]
WKJFPR77hydra-queue-runner: Maintain count of active build steps - [3]
ENXUSMSVMake concurrency more robust - [4]
5AIYUMTBBasic remote building - [5]
24BMQDZAStart of single-process hydra-queue-runner - [6]
NJJ7H64SVery basic multi-threaded queue runner - [7]
RYTQLATYKeep track of failed paths in the Hydra database - [8]
OCZ4LSGGAutomatically retry aborted builds - [9]
HHOMBU7Ghydra-queue-runner: Implement timeouts - [10]
PQFOMNTLhydra-queue-runner: More stats - [*]
YZAI5GQUImplement a database connection pool
Change contents
- replacement in src/hydra-queue-runner/build-remote.cc at line 117
RemoteResult & result)RemoteResult & result, counter & nrStepsBuilding) - replacement in src/hydra-queue-runner/build-remote.cc at line 179
int res = readInt(from);int res;{MaintainCount mc(nrStepsBuilding);res = readInt(from);} - edit in src/hydra-queue-runner/build-remote.hh at line 5
#include "counter.hh" - replacement in src/hydra-queue-runner/build-remote.hh at line 25
RemoteResult & result);[3.295]RemoteResult & result, counter & nrStepsBuilding); - file addition: counter.hh[3.187]
#pragma once#include <atomic>typedef std::atomic<unsigned int> counter;struct MaintainCount{counter & c;MaintainCount(counter & c) : c(c) { c++; }~MaintainCount() { c--; }}; - edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 22[12.19][3.19]
#include "counter.hh" - edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 45
- edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 46
typedef std::atomic<unsigned int> counter; - edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 47
struct MaintainCount{counter & c;MaintainCount(counter & c) : c(c) { c++; }~MaintainCount() { c--; }}; - edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 246
counter nrStepsBuilding{0}; - replacement in src/hydra-queue-runner/hydra-queue-runner.cc at line 1089
logDir, build->maxSilentTime, build->buildTimeout, result);logDir, build->maxSilentTime, build->buildTimeout, result, nrStepsBuilding); - edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 1427
printMsg(lvlError, format("%1% build steps currently building") % nrStepsBuilding);