[systemd-devel] `Found ordering cycle on _SERVICE_` loops due to `local-fs.target` with `Requires` instead of `Wants` for mounts generated from `/etc/fstab`

John Florian john at doubledog.org
Thu Apr 26 20:20:15 UTC 2018


On 2018-04-26 16:04, John Florian wrote:
> On 2018-04-25 04:53, Lennart Poettering wrote:
>> There have been requests in improving the cycle breaking algorithm,
>> but not much has been done in this area, since it's not clear what can
>> be done. Ultimately it's just polishing a broken situation, and
>> the better way out is to fix things properly, i.e. just correct the
>> cycle in the dependencies in the first place.
>
> Having been the author of numerous custom services that are intended 
> to wedge into those provided by systemd/Fedora I've faced resolving 
> these several times and I've never felt all that competent at the 
> task.  Lennart, you were immensely helpful on one occasion by pointing 
> me to `systemctl show FOO` but even then hunting the problem down was 
> far from simple (for me).  I've done the dot/graphviz thing and found 
> it just as useless to me as when I've tried applying it to Puppet's 
> ordering/dependency looping. I'm not blaming those tools (or systemd) 
> because I'm well aware much of the problem is my inability to use them 
> effectively.  The graphs always seem to be overly simple and revealing 
> no problem or overly detailed and obscuring the problem.  Compound 
> that with "an arrow pointing this way means what exactly?"
>
> Is there anything else that could be done to make hunting these loops 
> down easier?  Is there an example of any product that has a similar 
> situation where they excel at helping the developer?  Or are we 
> already there and I just need more practice?  I'm sure part of my 
> struggle is just not encountering these very regularly and integrating 
> into much that I'm only partly familiar with, but the result is the 
> same, trepidation and loathing.

Since I hate to grumble w/o so much as offering any possible 
suggestions... It seems like it might be helpful to have something like 
`systemctl show` but only dumping the properties used for ordering and 
dependencies.  Ideally, only ordering OR dependencies as the case 
warrants and for all units involved, but only those units.


More information about the systemd-devel mailing list