~ruther/guix-local

940a8c57be7ecdd139ba450765f0cc26de5b8ec7 — Ludovic Courtès 11 years ago d2d0514
offload: Remove mutual exclusion on transfers.

Suggested by Mark H. Weaver <mhw@netris.org>
at <http://lists.gnu.org/archive/html/guix-devel/2014-10/msg00352.html>.

* guix/scripts/offload.scm (transfer-and-offload): Remove uses of
  'with-machine-lock'.
1 files changed, 2 insertions(+), 7 deletions(-)

M guix/scripts/offload.scm
M guix/scripts/offload.scm => guix/scripts/offload.scm +2 -7
@@ 410,10 410,7 @@ there, and write the build log to LOG-PORT.  Return the exit status."
  "Offload DRV to MACHINE.  Prior to the actual offloading, transfer all of
INPUTS to MACHINE; if building DRV succeeds, retrieve all of OUTPUTS from
MACHINE."
  ;; Acquire MACHINE's upload or download lock to serialize file transfers in
  ;; a given direction to/from MACHINE in the presence of several 'offload'
  ;; hook instance.
  (when (with-machine-lock machine 'upload
  (when (begin
          (register-gc-root (derivation-file-name drv) machine)
          (send-files (cons (derivation-file-name drv) inputs)
                      machine))


@@ 423,9 420,7 @@ MACHINE."
                           #:build-timeout build-timeout)))
      (if (zero? status)
          (begin
            ;; Likewise (see above.)
            (with-machine-lock machine 'download
              (retrieve-files outputs machine))
            (retrieve-files outputs machine)
            (remove-gc-roots machine)
            (format (current-error-port)
                    "done with offloaded '~a'~%"