diff options
author | Christopher Baines <mail@cbaines.net> | 2023-08-09 19:48:51 +0100 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2023-08-09 20:14:30 +0100 |
commit | c5412d66b058051b627ea0fe5c409860289ad1f1 (patch) | |
tree | 582adcd51897067082fe40c910885e9a46aa0583 /guix-build-coordinator/client-communication.scm | |
parent | 7f89f17179b3af495d0b1e88218074912c78e68d (diff) | |
download | build-coordinator-c5412d66b058051b627ea0fe5c409860289ad1f1.tar build-coordinator-c5412d66b058051b627ea0fe5c409860289ad1f1.tar.gz |
Don't use threads for substituting derivations
Instead use non-blocking store connections like Cuirass does.
Diffstat (limited to 'guix-build-coordinator/client-communication.scm')
-rw-r--r-- | guix-build-coordinator/client-communication.scm | 25 |
1 files changed, 8 insertions, 17 deletions
diff --git a/guix-build-coordinator/client-communication.scm b/guix-build-coordinator/client-communication.scm index 4c1702d..05e9695 100644 --- a/guix-build-coordinator/client-communication.scm +++ b/guix-build-coordinator/client-communication.scm @@ -64,8 +64,7 @@ (define (start-client-request-server secret-key-base host port - build-coordinator - substitutes-channel) + build-coordinator) (run-server/patched (lambda (request body) (log-msg (build-coordinator-logger build-coordinator) @@ -80,8 +79,7 @@ (uri-path (request-uri request)))) body secret-key-base - build-coordinator - substitutes-channel))) + build-coordinator))) #:host host #:port port)) @@ -89,8 +87,7 @@ method-and-path-components raw-body secret-key-base - build-coordinator - substitutes-channel) + build-coordinator) (define datastore (build-coordinator-datastore build-coordinator)) @@ -443,11 +440,8 @@ (define (read-drv/substitute derivation-file) (unless (with-store store (valid-path? store derivation-file)) - (call-with-worker-thread - substitutes-channel - (lambda () - (substitute-derivation derivation-file - #:substitute-urls substitute-urls)))) + (substitute-derivation derivation-file + #:substitute-urls substitute-urls)) (read-derivation-from-file* derivation-file)) (let ((submit-build-result @@ -469,12 +463,9 @@ (if (null? (or substitute-urls '())) ;; Try again (read-drv/substitute derivation-file) - (call-with-worker-thread - substitutes-channel - (lambda () - (read-derivation-through-substitutes - derivation-file - substitute-urls))))) + (read-derivation-through-substitutes + derivation-file + substitute-urls))) (lambda () (read-drv/substitute derivation-file)) #:unwind? #t)) |