GNU bug report logs - #76338
shepherd restarts service during shutdown and then waits forever

Previous Next

Package: guix;

Reported by: Dariqq <dariqq <at> posteo.net>

Date: Sun, 16 Feb 2025 14:40:03 UTC

Severity: grave

Tags: patch

Merged with 76368

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Dariqq <dariqq <at> posteo.net>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 76338 <at> debbugs.gnu.org
Subject: bug#76338: shepherd restarts service during shutdown and then waits forever
Date: Fri, 21 Feb 2025 15:04:54 +0000
Hello,

On 21.02.25 11:52, Ludovic Courtès wrote:
> Hello,
> 
> Dariqq <dariqq <at> posteo.net> skribis:
> 
>> The two services that I know of are thermald and virtlogd.
> 
> I found these:
> 
> --8<---------------cut here---------------start------------->8--- 
> scheme@(guix scripts system search)> ,pp (map shepherd-service- 
> provision (append-map (lambda (services) (remove (lambda (service) 
> (memq 'user-processes (shepherd-service-requirement service))) 
> services)) (map service-type-default-shepherd-services (fold- 
> service- types cons '()))))

> 
> Some of them are legitimate, many are not.  (Not sure why ‘virtlogd’
> doesn’t show up here.)
> 

Neat trick. A lot more than I thought.

>> Also the purpose of the user-processes service (and maybe also the
>> filesystems) service as synchronization targets are documented 
>> only in their definition and implicitly with the shepherd graph 
>> image. System-shepherd services that dont depend on anything are 
>> probably a bad idea and seems like a very common mistake for (new)
>> users implementing their own services. Maybe this should be a a
>> more explicit note in the documentation for shepherd-service- 
>> requirement and/or a small paragraph in the shepherd services 
>> intro?
> 
> Yes, agreed.  I’m not entirely sure where to document it; do you 
> have ideas?
> 

Maybe near the shepherd-graph image in "Shepherd Services" where the
special "targets" can be seen as well (the image looks a bit outdated as
e.g.the filesystem "target" is missing)? Not sure if there is another
 "target" worth documenting.

Also maybe a comment or warning in the documentation for shepherd-
service-requirement field that root-shepherd services that don't depend
on anything/ don't depend on user-processes is most likely not what a
user wants for a usual daemon service?

Consistency in all guix services helps as well,s.t. one can look at an
example and then wonder what this user-processes service is about.

> (The doc in this area probably needs a Spring cleanup…)
> 
> 
> Thanks, Ludo’.





This bug report was last modified 80 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.