summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2019-11-06 22:02:34 +0100
committerLudovic Courtès <ludo@gnu.org>2019-11-07 18:39:55 +0100
commit665467767577172db40eea510583dbf2faf56a58 (patch)
tree3543bd9f5a152d6a92691ce86f5725d29b2684f2
parent91d1955df90d7cb281e62c0924feef7b08eabca1 (diff)
downloadguix-665467767577172db40eea510583dbf2faf56a58.tar.gz
derivations: Use a regular hash table for the module cache.
The hit rate of the 'add-data-to-store' cache goes from 10% to 4% on:

  guix build -e '(@@ (gnu packages libreoffice) libreoffice)' -nd

* guix/derivations.scm (%module-cache): Turn into a regular hash table.
It didn't make sense to use a weak-value hash table given that values
are pairs.
-rw-r--r--guix/derivations.scm2
1 files changed, 1 insertions, 1 deletions
diff --git a/guix/derivations.scm b/guix/derivations.scm
index bde937044a..6cdf55b1fe 100644
--- a/guix/derivations.scm
+++ b/guix/derivations.scm
@@ -1208,7 +1208,7 @@ they can refer to each other."
 
 (define %module-cache
   ;; Map a list of modules to its 'imported+compiled-modules' result.
-  (make-weak-value-hash-table))
+  (make-hash-table))
 
 (define* (imported+compiled-modules store modules #:key
                                     (system (%current-system))