From 54244e6e975add729eba150bbdc459198588b122 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe <othacehe@gnu.org> Date: Mon, 1 Feb 2021 12:30:38 +0100 Subject: [PATCH] database: Fix "db-update-build-status!". * src/cuirass/database.scm (db-update-build-status): Only consider evaluations that happened before the current one. This is useful when updating the build status of old evaluations. --- src/cuirass/database.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/cuirass/database.scm b/src/cuirass/database.scm index 257fe7e3..f89e6340 100644 --- a/src/cuirass/database.scm +++ b/src/cuirass/database.scm @@ -797,14 +797,16 @@ log file for DRV." UPDATE Builds SET stoptime =" now ", status =" status ", last_status = -(SELECT Builds.status FROM (SELECT job_name, specification FROM Builds +(SELECT Builds.status FROM +(SELECT evaluation, job_name, specification FROM Builds INNER JOIN Evaluations ON Builds.evaluation = Evaluations.id WHERE derivation = " drv ") AS cur, Builds INNER JOIN Evaluations ON Builds.evaluation = Evaluations.id WHERE cur.job_name = Builds.job_name AND cur.specification = Evaluations.specification AND +Builds.evaluation < cur.evaluation AND Builds.status >= 0 -ORDER BY evaluation DESC LIMIT 1) +ORDER BY Builds.evaluation DESC LIMIT 1) WHERE derivation =" drv " AND status != " status ";"))) (when (positive? rows) -- GitLab