Merge branch 'master' into libpqxx_undeprecate
[?]
Apr 1, 2020, 6:54 PM
3A7HTJZP2B6NC4XOGHBO3SQSZVUXTSK5OZZH2JU5W3THSQHYU4XACDependencies
- [2]
DKR2GXSAUpdate libpqxx usage to move away from deprecated API interactions. - [3]
UANT7MOVhydra-evaluator: add a 'ONE_AT_A_TIME' evaluator style - [4]
NJXD2ABJAbort unsupported build steps - [5]
UNVMKJV5Unify build and step status codes - [6]
XIFDDTXZDon't lock the BuildSteps table when inserting - [7]
MHVIT4JYSplit hydra-queue-runner.cc more - [8]
VQISTKOPhydra-queue-runner: Use substitutes - [9]
P6EWEJHLhydra-evaluator: Allow setting the maximum number of concurrent evaluations - [10]
32KJOERMTurn hydra-notify into a daemon - [11]
WV4SSAIYBuild against nix-master - [12]
YTAYNN7VQueue monitor: Bail out earlier if a step has failed previously - [13]
BG6PEOB2Make the output size limit configurable - [14]
MSIHMO45Tweak build steps - [15]
KBZHIGLGRecord the machine used for a build step - [16]
WDGARQ76Reuse build products / metrics stored in the database - [17]
IWB3F4Z6Fail builds with previously failed steps early - [18]
LVQXQIYAKill active build steps when builds are cancelled - [19]
24BMQDZAStart of single-process hydra-queue-runner - [20]
62MQPRXCPass null values to libpqxx properly - [21]
DKJFD6JNProcess Nix API changes - [22]
4YCF3KBGConcurrent hydra-evaluator - [23]
PQFOMNTLhydra-queue-runner: More stats - [24]
UQQ4IL55Add a error type for "unsupported system type"
Change contents
- resurrect zombie in src/hydra-evaluator/hydra-evaluator.cc at line 70
auto res = txn.exec - edit in src/hydra-evaluator/hydra-evaluator.cc at line 71
"where j.enabled != 0 and p.enabled != 0"); - resurrect zombie in src/hydra-evaluator/hydra-evaluator.cc at line 71
("select project, j.name, lastCheckedTime, triggerTime, checkInterval, j.enabled as jobset_enabled from Jobsets j join Projects p on j.project = p.name " - resolve order conflict in src/hydra-evaluator/hydra-evaluator.cc at line 71
- edit in src/hydra-evaluator/hydra-evaluator.cc at line 72
"where j.enabled != 0 and p.enabled != 0"); - edit in src/hydra-queue-runner/builder.cc at line 430
txn.exec_params0("update Builds set finished = 1, buildStatus = $2, startTime = $3, stopTime = $4, isCachedBuild = $5, notificationPendingSince = $4 where id = $1 and finished = 0",build2->id,(int) (build2->drvPath != step->drvPath && result.buildStatus() == bsFailed ? bsDepFailed : result.buildStatus()),result.startTime,result.stopTime,result.stepStatus == bsCachedFailure ? 1 : 0); - edit in src/hydra-queue-runner/builder.cc at line 432
txn.exec_params0("insert into FailedPaths values ($1)", path); - replacement in src/hydra-queue-runner/builder.cc at line 456
txn.parameterized("update Builds set finished = 1, buildStatus = $2, startTime = $3, stopTime = $4, isCachedBuild = $5, notificationPendingSince = $4 where id = $1 and finished = 0")(build->id)((int) (build->drvPath != step->drvPath && result.buildStatus() == bsFailed ? bsDepFailed : result.buildStatus()))(result.startTime)(result.stopTime)(result.stepStatus == bsCachedFailure ? 1 : 0).exec();txn.exec_params0("update Builds set finished = 1, buildStatus = $2, startTime = $3, stopTime = $4, isCachedBuild = $5, notificationPendingSince = $4 where id = $1 and finished = 0",build->id,(int) (build->drvPath != step->drvPath && result.buildStatus() == bsFailed ? bsDepFailed : result.buildStatus()),result.startTime,result.stopTime,result.stepStatus == bsCachedFailure ? 1 : 0); - replacement in src/hydra-queue-runner/builder.cc at line 469
for (auto & path : step->drv->outputPaths())txn.parameterized("insert into FailedPaths values ($1)")(localStore->printStorePath(path)).exec();for (auto & path : step->drv.outputPaths())txn.exec_params0("insert into FailedPaths values ($1)", localStore->printStorePath(path)); - replacement in src/hydra-queue-runner/hydra-queue-runner.cc at line 258
step->drvPath,localStore->printStorePath(step->drvPath), - edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 267[5.446]→[5.5883:5935](∅→∅),[5.446]→[5.5883:5935](∅→∅),[5.109]→[5.5936:5966](∅→∅),[5.109]→[5.5936:5966](∅→∅)
(localStore->printStorePath(step->drvPath))(step->drv->platform) - resolve order conflict in src/hydra-queue-runner/hydra-queue-runner.cc at line 267
- resurrect zombie in src/hydra-queue-runner/hydra-queue-runner.cc at line 270
txn.exec_params0("insert into BuildStepOutputs (build, stepnr, name, path) values ($1, $2, $3, $4)", - edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 270
for (auto & output : step->drv.outputs) - edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 273[2.3373]→[2.3373:3438](∅→∅),[2.3373]→[2.3373:3438](∅→∅),[5.8997]→[5.5967:6012](∅→∅),[5.8997]→[5.5967:6012](∅→∅),[5.9164]→[5.6013:6113](∅→∅),[5.9164]→[5.6013:6113](∅→∅)
buildId, stepNr, output.first, output.second.path);for (auto & output : step->drv->outputs)(buildId)(stepNr)(output.first)(localStore->printStorePath(output.second.path)).exec(); - resolve order conflict in src/hydra-queue-runner/hydra-queue-runner.cc at line 273[2.3373]
- edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 273
buildId, stepNr, output.first, localStore->printStorePath(output.second.path)); - replacement in src/hydra-queue-runner/hydra-queue-runner.cc at line 324
drvPath,(localStore->printStorePath(drvPath)), - edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 329
(localStore->printStorePath(drvPath)) - resolve order conflict in src/hydra-queue-runner/hydra-queue-runner.cc at line 329
- edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 334
build->id, stepNr, outputName, storePath);(build->id)(stepNr)(outputName)(localStore->printStorePath(storePath)).exec(); - resolve order conflict in src/hydra-queue-runner/hydra-queue-runner.cc at line 334[2.4860]
- edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 334
build->id, stepNr, outputName,localStore->printStorePath(storePath)); - replacement in src/hydra-queue-runner/hydra-queue-runner.cc at line 455
if (!txn.exec_params("select 1 from FailedPaths where path = $1", path).empty())for (auto & path : step->drv->outputPaths())if (!txn.parameterized("select 1 from FailedPaths where path = $1")(localStore->printStorePath(path)).exec().empty())for (auto & path : step->drv.outputPaths())if (!txn.exec_params("select 1 from FailedPaths where path = $1", localStore->printStorePath(path)).empty()) - replacement in src/hydra-queue-runner/queue-monitor.cc at line 175
ex.step->drvPath);localStore->printStorePathh(ex.step->drvPath)); - edit in src/hydra-queue-runner/queue-monitor.cc at line 177
(localStore->printStorePath(ex.step->drvPath)).exec(); - resolve order conflict in src/hydra-queue-runner/queue-monitor.cc at line 177
- resurrect zombie in src/hydra-queue-runner/queue-monitor.cc at line 179
auto res = txn.exec_params("select max(s.build) from BuildSteps s join BuildStepOutputs o on s.build = o.build where path = $1 and startTime != 0 and stopTime != 0 and status = 1", - edit in src/hydra-queue-runner/queue-monitor.cc at line 179
for (auto & output : ex.step->drv.outputs) { - edit in src/hydra-queue-runner/queue-monitor.cc at line 182[2.8281]→[2.8281:8331](∅→∅),[2.8281]→[2.8281:8331](∅→∅),[5.1276]→[5.7135:7201](∅→∅),[5.1276]→[5.7135:7201](∅→∅),[5.1577]→[5.7202:7287](∅→∅),[5.1577]→[5.7202:7287](∅→∅)
output.second.path);for (auto & output : ex.step->drv->outputs) {(localStore->printStorePath(output.second.path)).exec(); - resolve order conflict in src/hydra-queue-runner/queue-monitor.cc at line 182[2.8281]
- edit in src/hydra-queue-runner/queue-monitor.cc at line 182
localStore->printStorePath(output.second.path)); - edit in src/hydra-queue-runner/queue-monitor.cc at line 623
output.second.path);(localStore->printStorePath(output.second.path)).exec(); - resolve order conflict in src/hydra-queue-runner/queue-monitor.cc at line 623[2.9180]
- edit in src/hydra-queue-runner/queue-monitor.cc at line 623
localStore->printStorePath(output.second.path));