diff options
-rw-r--r-- | guix-build-coordinator/agent.scm | 28 |
1 files changed, 7 insertions, 21 deletions
diff --git a/guix-build-coordinator/agent.scm b/guix-build-coordinator/agent.scm index c85de7a..fd5a3a8 100644 --- a/guix-build-coordinator/agent.scm +++ b/guix-build-coordinator/agent.scm @@ -110,15 +110,12 @@ (define upload-slots (make-vector parallel-uploads #f)) - (define queued-uploads - '()) - (define uploads-mutex (make-mutex)) (define uploads-condition-variable (make-condition-variable)) - (define (with-upload-slot lgr file p) + (define (with-upload-monitoring lgr file p) (define upload-progress-record (make-upload-progress file 0)) @@ -136,23 +133,18 @@ (let ((uploads-count (vector-count (lambda (_ slot) (not (eq? #f slot))) - upload-slots)) - (queued-uploads-count - (length queued-uploads))) + upload-slots))) (when (or (> bytes-now-sent (+ last-progress-update-bytes-sent 10000000)) - (and (> queued-uploads-count 0) - (> (- (time-second (current-time))) + (and (> (- (time-second (current-time))) (+ last-progress-update-time 15)))) (set! last-progress-update-bytes-sent bytes-now-sent) (set! last-progress-update-time (time-second (current-time))) - (log-msg lgr 'INFO - uploads-count " uploads in progress, " - queued-uploads-count " queued") + (log-msg lgr 'INFO uploads-count " uploads in progress") (vector-for-each (lambda (_ upload-progress) @@ -179,9 +171,6 @@ (lock-mutex uploads-mutex) - (set! queued-uploads - (cons file queued-uploads)) - (let loop () (let ((free-index (any (lambda (index) @@ -198,9 +187,6 @@ free-index upload-progress-record) - (set! queued-uploads - (delete file queued-uploads string=?)) - (unlock-mutex uploads-mutex) (call-with-values @@ -277,7 +263,7 @@ derivation-name end-time submit-outputs? - with-upload-slot) + with-upload-monitoring) (post-build-failure lgr coordinator-interface build-id @@ -758,7 +744,7 @@ but the guix-daemon claims it's unavailable" (define (post-build-success lgr coordinator-interface build-id derivation end-time submit-outputs? - with-upload-slot) + with-upload-monitoring) (define outputs (derivation-outputs (read-derivation-from-file derivation))) @@ -874,7 +860,7 @@ but the guix-daemon claims it's unavailable" (define (submit-one-output output-name output compressed-file) (retry-on-error (lambda () - (with-upload-slot + (with-upload-monitoring lgr (derivation-output-path output) (lambda (report-bytes-sent) |