aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2023-08-09 19:37:21 +0100
committerChristopher Baines <mail@cbaines.net>2023-08-09 19:37:21 +0100
commit7f89f17179b3af495d0b1e88218074912c78e68d (patch)
treeb38b9c3d4c4fe5e3b4cf82c4a178e3a70f0d373f
parent1f2ba21c8fad72e56dbc84c4c53b70e3af745c42 (diff)
downloadbuild-coordinator-7f89f17179b3af495d0b1e88218074912c78e68d.tar
build-coordinator-7f89f17179b3af495d0b1e88218074912c78e68d.tar.gz
Name the fibers threads
To make debugging easier.
-rw-r--r--guix-build-coordinator/coordinator.scm18
1 files changed, 18 insertions, 0 deletions
diff --git a/guix-build-coordinator/coordinator.scm b/guix-build-coordinator/coordinator.scm
index 255fca7..15b6aa0 100644
--- a/guix-build-coordinator/coordinator.scm
+++ b/guix-build-coordinator/coordinator.scm
@@ -46,6 +46,8 @@
#:use-module (fibers scheduler)
#:use-module (fibers conditions)
#:use-module (prometheus)
+ #:use-module ((guix build syscalls)
+ #:select (set-thread-name))
#:use-module (guix derivations)
#:use-module (guix build utils)
#:use-module (guix-build-coordinator utils)
@@ -488,6 +490,22 @@
(lambda ()
(run-fibers
(lambda ()
+ (let* ((current (current-scheduler))
+ (schedulers
+ (cons current (scheduler-remote-peers current))))
+ (for-each
+ (lambda (i sched)
+ (spawn-fiber
+ (lambda ()
+ (catch 'system-error
+ (lambda ()
+ (set-thread-name
+ (string-append "fibers " (number->string i))))
+ (const #t)))
+ sched))
+ (iota (length schedulers))
+ schedulers))
+
(log-msg (build-coordinator-logger build-coordinator)
'INFO
"initialising metrics")