Subject: [bug#63417] [PATCH] services: guix-build-coordinator: Set GC_RETRY_SIGNALS=0.

From: Maxim Cournoyer <[email-masked]>
Date: Fri, 01 Sep 2023 10:21:56 -0400

Hi Christopher,

Christopher Baines <[email-masked]> writes:

> This seems to work around the crashes/restarts that have recently been
> affecting the coordinator (see #63368).
>
> * gnu/services/guix.scm (guix-build-coordinator-shepherd-services): Set
> GC_RETRY_SIGNALS=0.
> ---
>  gnu/services/guix.scm | 5 +++++
>  1 file changed, 5 insertions(+)
>
> diff --git a/gnu/services/guix.scm b/gnu/services/guix.scm
> index 90310ab9d9..f8fee38b7a 100644
> --- a/gnu/services/guix.scm
> +++ b/gnu/services/guix.scm
> @@ -372,6 +372,11 @@ (define (guix-build-coordinator-shepherd-services config)
>                           "GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale")
>                         "LC_ALL=en_US.utf8"
>                         "PATH=/run/current-system/profile/bin" ; for hooks
> +                       ;; TODO: This seems to help with avoid
> +                       ;; crashes/restarts, but ideally the Guix service
> +                       ;; wouldn't be setting environment variables to fiddle
> +                       ;; with the behaviour of Guile's GC.
> +                       "GC_RETRY_SIGNALS=0"
>                         #$@extra-environment-variables)
>                       #:log-file "/var/log/guix-build-coordinator/coordinator.log")
>                      args))))

Have you tried presenting the problem to more core Guile folks?
(guile-devel).  Perhaps someone could tip you in the right direction, or
perhaps it's a bug in Guile?

-- 
Thanks,
Maxim