Subject: Re: bug#74284: Shepherd does not respect ordering for one-shot? services

From: Ludovic Courtès <[email-masked]>
Date: Fri, 22 Nov 2024 15:37:53 +0100

Hi Tomas,

(+ Dariqq since we briefly discussed it on IRC yesterday.)

Tomas Volf <[email-masked]> skribis:

> Notice that the order changed to (a b c d, this matches the increasing
> wait time), the initial messages are all together:
>
> Starting service d...
> Starting service c...
> Starting service b...
> Starting service a...
>
> and the whole start-up takes 4 seconds (the wait time of `d').  That
> seems to indicate that all 4 services are actually starting at the same
> time without waiting as they should per the #:requirement argument.

Indeed.  As Dariqq found out, the problem was that we’d mark one-short
services in ‘%one-shot-services-started’ as soon as we’ve started them,
effectively acting as if “started” were synonymous with “running”.

This is fixed with 550c0370985022c5c90a7b477a5e0b84f6faf5d7.

Let me know if you find anything fishy!

Thanks,
Ludo’.