From d7fb5538013710288e91657499f0e04207115776 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 18 Jun 2020 11:58:41 +0200 Subject: [PATCH] nar: Avoid opening the database an additional time. * guix/nar.scm (finalize-store-file): Call 'register-items' and pass it DB. This avoids opening the database a second time and hopefully reduces contention on 'db.sqlite-shm'. --- guix/nar.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/guix/nar.scm b/guix/nar.scm index eff4becbce..16dfe28766 100644 --- a/guix/nar.scm +++ b/guix/nar.scm @@ -27,6 +27,7 @@ ;; (guix store) since this is "daemon-side" code. #:use-module (guix store) #:use-module (guix store database) + #:use-module ((guix build store-copy) #:select (store-info)) #:use-module (guix ui) ; for '_' #:use-module (gcrypt hash) @@ -115,9 +116,8 @@ held." ;; Register TARGET. As a side effect, it resets the timestamps of all ;; its files, recursively, and runs a deduplication pass. - (register-path target - #:references references - #:deriver deriver)) + (register-items db + (list (store-info target deriver references)))) (when lock? (delete-file (string-append target ".lock"))