aboutsummaryrefslogtreecommitdiff
path: root/guix-build-coordinator/datastore/sqlite.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix-build-coordinator/datastore/sqlite.scm')
-rw-r--r--guix-build-coordinator/datastore/sqlite.scm14
1 files changed, 8 insertions, 6 deletions
diff --git a/guix-build-coordinator/datastore/sqlite.scm b/guix-build-coordinator/datastore/sqlite.scm
index 888775e..f10af88 100644
--- a/guix-build-coordinator/datastore/sqlite.scm
+++ b/guix-build-coordinator/datastore/sqlite.scm
@@ -1638,7 +1638,8 @@ WHERE build_id = :build_id"
(apply
(lambda* (uuid new-priority
- #:key skip-updating-other-build-derived-priorities)
+ #:key skip-updating-derived-priorities?
+ override-derived-priority)
(let ((build-id
old-priority
(call-with-worker-thread
@@ -1664,8 +1665,9 @@ WHERE build_id = :build_id"
db
build-id))
(new-derived-priority
- (max new-priority
- (get-derived-priority db build-id))))
+ (or override-derived-priority
+ (max new-priority
+ (get-derived-priority db build-id)))))
(unless (eq? old-derived-priority
new-derived-priority)
@@ -1674,7 +1676,7 @@ WHERE build_id = :build_id"
new-derived-priority))
(unless (or all-inputs-built?
- skip-updating-other-build-derived-priorities)
+ skip-updating-derived-priorities?)
(when (> new-derived-priority
old-derived-priority)
(update-unprocessed-builds-with-higher-derived-priorities
@@ -1687,8 +1689,8 @@ WHERE build_id = :build_id"
;; transaction, but since there could be lots of builds to update the
;; priority of, and a new derived priority has to be calculated for
;; each one, it's better to handle it afterwards.
- (when (< new-priority
- old-priority)
+ (when (and (not skip-updating-derived-priorities?)
+ (< new-priority old-priority))
(datastore-update-unprocessed-builds-with-lower-derived-priorities
datastore
uuid