diff options
author | Christopher Baines <mail@cbaines.net> | 2022-10-16 17:10:09 +0100 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2022-10-16 17:10:09 +0100 |
commit | f051c28c0d5882ba94570ef1e525567bbed0254d (patch) | |
tree | 138cbc6f253238217af3887b4c42bc1a2da10f68 /guix-build-coordinator/agent-messaging | |
parent | 888da40020ab3c66b52e3bdca4a572750cd13fc5 (diff) | |
download | build-coordinator-f051c28c0d5882ba94570ef1e525567bbed0254d.tar build-coordinator-f051c28c0d5882ba94570ef1e525567bbed0254d.tar.gz |
Use suspendable ports for the agent, with timeouts
This seems like a way of making the Guile internals for doing network I/O
reliable. Currently, there are problems where things on the network timeout,
but the Guile code for reading/writing just sits there, hung.
This seems like it might help.
Diffstat (limited to 'guix-build-coordinator/agent-messaging')
-rw-r--r-- | guix-build-coordinator/agent-messaging/http.scm | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/guix-build-coordinator/agent-messaging/http.scm b/guix-build-coordinator/agent-messaging/http.scm index cec0168..deac4cd 100644 --- a/guix-build-coordinator/agent-messaging/http.scm +++ b/guix-build-coordinator/agent-messaging/http.scm @@ -201,7 +201,9 @@ response)))))) (retry-on-error (lambda () - (with-gc-protection make-request)) + (with-port-timeouts + (lambda () + (with-gc-protection make-request)))) #:times 9 #:delay 10 #:ignore agent-error-from-coordinator?)) |