From 06c30f561d2080ff7f18715e9956866004636716 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 23 May 2020 08:51:06 +0100 Subject: Better handle failures to delete substitute cache files The file can disappear if two threads try to delete it at once. --- guix-build-coordinator/utils.scm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/guix-build-coordinator/utils.scm b/guix-build-coordinator/utils.scm index a95e970..28e245d 100644 --- a/guix-build-coordinator/utils.scm +++ b/guix-build-coordinator/utils.scm @@ -323,7 +323,15 @@ upcoming chunk." %narinfo-cache-directory "/" directory "/" hash-part))) (when (file-exists? cache-file) - (delete-file cache-file)))) + (with-exception-handler + (lambda (exn) + (simple-format + (current-error-port) + "error: when deleting substitute cache file: ~A\n" + exn)) + (lambda () + (delete-file cache-file)) + #:unwind? #t)))) (or directories '()))) (let ((narinfos -- cgit v1.2.3