From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
To: 48521@debbugs.gnu.org
Subject: bug#48521: opendht-service-type hangs Shepherd at boot
Date: Wed, 19 May 2021 17:36:38 -0400 [thread overview]
Message-ID: <87zgwqh0d5.fsf@gmail.com> (raw)
In-Reply-To: <874kezhr3c.fsf@gmail.com> (Maxim Cournoyer's message of "Wed, 19 May 2021 07:59:19 -0400")
Maxim Cournoyer <maxim.cournoyer@gmail.com> writes:
> Hello,
>
> I just noticed about this problem following a reboot. I can also
> reproduce it in 'guix system vm', simply adding the opendht-service-type
> to my operating-system declaration.
>
> The boot proceeds until 'error in finalization thread: Success' then
> hangs indefinitely.
>
> What is troubling for me is that the service is rather straightforwardly
> defined. It uses the make-forkexec-constructor/container like so:
>
> (define (opendht-shepherd-service config)
> "Return a <shepherd-service> running OpenDHT."
> (shepherd-service
> (documentation "Run an OpenDHT node.")
> (provision '(opendht dhtnode dhtproxy))
> (requirement '(user-processes syslogd))
> (start #~(make-forkexec-constructor/container
> (list #$@(opendht-configuration->command-line-arguments config))
> #:mappings (list (file-system-mapping
> (source "/dev/log") ;for syslog
> (target source)))
> #:user "opendht"))
> (stop #~(make-kill-destructor))))
>
> I'm not sure how using such basic building blocks could lead to a hang
> in Shepherd ?
After much trial and error, the service can be made to not hang Shepherd
with the removal of the mappings argument:
--8<---------------cut here---------------start------------->8---
modified gnu/services/networking.scm
@@ -845,9 +845,9 @@ CONFIG, an <opendht-configuration> object."
(requirement '(user-processes networking syslogd))
(start #~(make-forkexec-constructor/container
(list #$@(opendht-configuration->command-line-arguments config))
- #:mappings (list (file-system-mapping
- (source "/dev/log") ;for syslog
- (target source)))
+ ;; #:mappings (list (file-system-mapping
+ ;; (source "/dev/log") ;for syslog
+ ;; (target source)))
#:user "opendht"))
(stop #~(make-kill-destructor))))
--8<---------------cut here---------------end--------------->8---
I have no idea why that is, but given that the tor-service-type does the
same thing, I can only conclude that it is some strange interaction
between dhtnode and syslog.
The above fixes the hang, but breaks logging to syslog.
Ideas?
Maxim
next prev parent reply other threads:[~2021-05-19 21:37 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-19 11:59 bug#48521: opendht-service-type hangs Shepherd at boot Maxim Cournoyer
2021-05-19 21:36 ` Maxim Cournoyer [this message]
2021-05-20 2:52 ` Maxim Cournoyer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87zgwqh0d5.fsf@gmail.com \
--to=maxim.cournoyer@gmail.com \
--cc=48521@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).