diff options
Diffstat (limited to 'nar-herder/database.scm')
-rw-r--r-- | nar-herder/database.scm | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/nar-herder/database.scm b/nar-herder/database.scm index 2bac86f..7a550ec 100644 --- a/nar-herder/database.scm +++ b/nar-herder/database.scm @@ -57,6 +57,7 @@ database-fold-all-narinfo-files database-map-all-narinfo-files + database-count-narinfo-files database-insert-cached-narinfo-file database-select-cached-narinfo-file-by-hash @@ -1117,6 +1118,24 @@ FROM narinfo_files" result)) '())) +(define (database-count-narinfo-files database) + (call-with-worker-thread + (database-reader-thread-channel database) + (lambda (db) + (let ((statement + (sqlite-prepare + db + " +SELECT COUNT(*) FROM narinfo_files" + #:cache? #t))) + + (let ((result + (vector-ref (sqlite-step statement) + 0))) + (sqlite-reset statement) + + result))))) + (define (database-insert-cached-narinfo-file database narinfo-id size |