aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2023-05-02 16:11:48 +0200
committerChristopher Baines <mail@cbaines.net>2023-05-02 16:11:48 +0200
commit2448b2026bb1f5e0cee6f78b7d3b2e6a30905136 (patch)
treef831d6025796451d382b99c8cdd59638ec69c531
parentdd932a979c23acf3e751e9fe1359126363ec1775 (diff)
downloadbuild-coordinator-2448b2026bb1f5e0cee6f78b7d3b2e6a30905136.tar
build-coordinator-2448b2026bb1f5e0cee6f78b7d3b2e6a30905136.tar.gz
Don't log as much about "expected" exceptions in worker threads
-rw-r--r--guix-build-coordinator/coordinator.scm6
-rw-r--r--guix-build-coordinator/datastore.scm8
-rw-r--r--guix-build-coordinator/datastore/sqlite.scm9
3 files changed, 17 insertions, 6 deletions
diff --git a/guix-build-coordinator/coordinator.scm b/guix-build-coordinator/coordinator.scm
index adda7a4..0e87b0b 100644
--- a/guix-build-coordinator/coordinator.scm
+++ b/guix-build-coordinator/coordinator.scm
@@ -333,7 +333,11 @@
(datastore
(database-uri->datastore
database-uri-string
- #:metrics-registry metrics-registry))
+ #:metrics-registry metrics-registry
+ #:worker-thread-log-exception?
+ (lambda (exn)
+ (and (not (agent-error? exn))
+ (not (client-error? exn))))))
hooks
(allocation-strategy
basic-build-allocation-strategy))
diff --git a/guix-build-coordinator/datastore.scm b/guix-build-coordinator/datastore.scm
index a12c41a..4af90e0 100644
--- a/guix-build-coordinator/datastore.scm
+++ b/guix-build-coordinator/datastore.scm
@@ -97,12 +97,16 @@
(define* (database-uri->datastore database
#:key
- metrics-registry)
+ metrics-registry
+ worker-thread-log-exception?)
(cond
((string-prefix? "pg://" database)
(postgresql-datastore database))
((string-prefix? "sqlite://" database)
- (sqlite-datastore database #:metrics-registry metrics-registry))
+ (sqlite-datastore database
+ #:metrics-registry metrics-registry
+ #:worker-thread-log-exception?
+ worker-thread-log-exception?))
(else
(error
(simple-format #f "Unknown database ~A" database)))))
diff --git a/guix-build-coordinator/datastore/sqlite.scm b/guix-build-coordinator/datastore/sqlite.scm
index a37c97c..5fb6408 100644
--- a/guix-build-coordinator/datastore/sqlite.scm
+++ b/guix-build-coordinator/datastore/sqlite.scm
@@ -114,7 +114,8 @@
(define* (sqlite-datastore database-uri
#:key
update-database?
- metrics-registry)
+ metrics-registry
+ worker-thread-log-exception?)
(define database-file
(string-drop database-uri
(string-length "sqlite://")))
@@ -199,7 +200,8 @@ CREATE TABLE IF NOT EXISTS mem.build_allocation_plan (
(current-error-port)
"warning: database write took ~1,2f seconds (~a)~%"
duration
- proc)))))
+ proc)))
+ #:log-exception? worker-thread-log-exception?))
;; Make sure the worker thread has initialised, and created the in memory
;; tables
@@ -260,7 +262,8 @@ CREATE TABLE IF NOT EXISTS mem.build_allocation_plan (
(current-error-port)
"warning: database read took ~1,2f seconds (~a)~%"
duration
- proc)))))
+ proc)))
+ #:log-exception? worker-thread-log-exception?))
datastore))