From fa6e4ac8427b4f1b36437214434d18462cbfca1d Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Wed, 21 Oct 2020 19:47:11 +0100 Subject: [PATCH] Use the status for ordering, as well as timestamp As this will handle cases where the timestamps from Cuirass don't make sense, like a build being canceled with a timestamp of 0 (1970). --- guix-data-service/model/build.scm | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/guix-data-service/model/build.scm b/guix-data-service/model/build.scm index 8ec0af2..972a16a 100644 --- a/guix-data-service/model/build.scm +++ b/guix-data-service/model/build.scm @@ -253,7 +253,11 @@ SELECT build_servers.url, 'timestamp', build_status.timestamp, 'status', build_status.status ) - ORDER BY build_status.timestamp + ORDER BY CASE WHEN status = 'scheduled' THEN -2 + WHEN status = 'started' THEN -1 + ELSE 0 + END ASC, + timestamp ASC ) FROM build_status WHERE build_status.build_id = builds.id @@ -295,7 +299,11 @@ SELECT build_servers.url, 'timestamp', build_status.timestamp, 'status', build_status.status ) - ORDER BY build_status.timestamp + ORDER BY CASE WHEN status = 'scheduled' THEN -2 + WHEN status = 'started' THEN -1 + ELSE 0 + END ASC, + timestamp ASC ) FROM build_status WHERE build_status.build_id = builds.id