guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

09/11: cache: Gracefully handle non-existent cache.


From: guix-commits
Subject: 09/11: cache: Gracefully handle non-existent cache.
Date: Mon, 25 Oct 2021 14:13:29 -0400 (EDT)

civodul pushed a commit to branch master
in repository guix.

commit 2cb0b3709ace41078872578f657ab0ee45d20ac9
Author: Ludovic Courtès <ludo@gnu.org>
AuthorDate: Fri Oct 1 23:12:09 2021 +0200

    cache: Gracefully handle non-existent cache.
    
    * guix/cache.scm (maybe-remove-expired-cache-entries): Ignore ENOENT
    when writing EXPIRY-FILE.
---
 guix/cache.scm | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/guix/cache.scm b/guix/cache.scm
index 0401a9d..5100980 100644
--- a/guix/cache.scm
+++ b/guix/cache.scm
@@ -101,7 +101,13 @@ CLEANUP-PERIOD denotes the minimum time between two cache 
cleanups."
                                   #:now now
                                   #:entry-expiration entry-expiration
                                   #:delete-entry delete-entry)
-    (call-with-output-file expiry-file
-      (cute write (time-second now) <>))))
+    (catch 'system-error
+      (lambda ()
+        (call-with-output-file expiry-file
+          (cute write (time-second now) <>)))
+      (lambda args
+        ;; ENOENT means CACHE does not exist.
+        (unless (= ENOENT (system-error-errno args))
+          (apply throw args))))))
 
 ;;; cache.scm ends here



reply via email to

[Prev in Thread] Current Thread [Next in Thread]