From 70da6b51848f4483958fcaa5b586e10f676c08aa Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Wed, 29 Apr 2020 18:03:36 +0100 Subject: Use a hash-table for setup failures, rather than an alist This will probably perform better when there are lots of step failures. --- guix-build-coordinator/build-allocator.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'guix-build-coordinator/build-allocator.scm') diff --git a/guix-build-coordinator/build-allocator.scm b/guix-build-coordinator/build-allocator.scm index d3030f5..49868a3 100644 --- a/guix-build-coordinator/build-allocator.scm +++ b/guix-build-coordinator/build-allocator.scm @@ -37,7 +37,7 @@ (let ((agents (datastore-list-agents datastore)) (builds (datastore-list-unprocessed-builds datastore)) - (setup-failures + (setup-failures-hash (datastore-fetch-setup-failures datastore))) (define (filter-builds-for-agent agent-id) @@ -77,7 +77,7 @@ (log "build:" (assq-ref build 'uuid)) (let* ((build-id (assq-ref build 'uuid)) (setup-failures-for-build - (or (assoc-ref setup-failures build-id) + (or (hash-ref setup-failures-hash build-id) '())) (relevant-setup-failures (filter relevant-setup-failure? -- cgit v1.2.3