diff options
Diffstat (limited to 'nar-herder')
-rw-r--r-- | nar-herder/database.scm | 8 | ||||
-rw-r--r-- | nar-herder/server.scm | 4 |
2 files changed, 6 insertions, 6 deletions
diff --git a/nar-herder/database.scm b/nar-herder/database.scm index 2db561a..4fa145f 100644 --- a/nar-herder/database.scm +++ b/nar-herder/database.scm @@ -259,7 +259,8 @@ CREATE TABLE scheduled_cached_narinfo_removal ( "CREATE INDEX IF NOT EXISTS narinfo_files_narinfo_id ON narinfo_files (narinfo_id);")) -(define (setup-database database-file metrics-registry) +(define* (setup-database database-file metrics-registry + #:key (reader-threads 1)) (define mmap-size #f) (let ((db (db-open database-file))) @@ -302,10 +303,7 @@ CREATE TABLE scheduled_cached_narinfo_removal ( #:name "db r" ;; Use a minimum of 2 and a maximum of 8 threads - #:parallelism - (min (max (current-processor-count) - 2) - 64) + #:parallelism reader-threads #:delay-logger (let ((delay-metric (make-histogram-metric metrics-registry diff --git a/nar-herder/server.scm b/nar-herder/server.scm index dd59216..2b941b9 100644 --- a/nar-herder/server.scm +++ b/nar-herder/server.scm @@ -631,7 +631,9 @@ (make-scheduler #:parallelism 1)) (let* ((database (setup-database (assq-ref opts 'database) - metrics-registry)) + metrics-registry + #:reader-threads + (assq-ref opts 'database-reader-threads))) (canonical-storage (and=> (assq-ref opts 'storage) canonicalize-path)) |