From: Michael Tremer Date: Sun, 26 Jan 2025 13:42:10 +0000 (+0000) Subject: builders: Fix least busy iterator X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cb990bc0a3172fdf52484afc10068e63e3aa1cd3;p=pbs.git builders: Fix least busy iterator This must be an outer join so that we will always get all builds, even those that don't have a job running. Signed-off-by: Michael Tremer --- diff --git a/src/buildservice/builders.py b/src/buildservice/builders.py index f23e5bfe..ba8fb2a0 100644 --- a/src/buildservice/builders.py +++ b/src/buildservice/builders.py @@ -228,6 +228,8 @@ class Builders(base.Object): jobs.Job.builder_id == Builder.id, ) .where( + Builder.deleted_at == None, + # Jobs cannot be deleted jobs.Job.deleted_at == None, @@ -246,12 +248,13 @@ class Builders(base.Object): .select( Builder, ) - .select_from( + .join( builder_jobs, + builder_jobs.c.builder_id == Builder.id, + isouter=True, ) - .join( - Builder, - Builder.id == builder_jobs.c.builder_id, + .where( + Builder.deleted_at == None, ) .order_by( (