• Bug#590892: not honored on shutdown, sindsigs not interac

    From Mark Hindley@21:1/5 to Dmitry Bogatov on Wed Mar 5 09:30:02 2025
    Control: tags -1 upstream

    Jessie,

    I know this has been dormant for a long time, for which, apologies.

    On Sat, Jul 13, 2019 at 08:29:26AM +0000, Dmitry Bogatov wrote:
    I thing we already have everything needed. Essentially, insserv
    impements topological sorting, both on start sequence and stop sequence.

    On start, if "foo" has "Should-Start: bar", it means that "foo" will be
    started /after/ "bar".

    On start, if "foo" has "X-Start-Before: bar", it means that "foo" will
    be started /before/ "bar".

    On stop, if "foo" has "Should-Stop: bar", then "foo" is stopped /before/
    "bar".

    On stop, if "foo" has "X-Stop-After: bar", then "foo" is stoppend
    /after/ "bar"

    So, any init script can specify arbitrary relations (before, after, irrelevant) with any other script. So, to make sure that your script is
    never executed parallel to some other, you have to use one of first two relations and one of last two.

    On other hand, we already have X-Interactive, which, strictly speaking,
    is not in basis (it can be expressed in terms of Should-Start and X-Start-Before).

    Jess, how much complexity would it be to implement X-Exclusive (or reusing X-Interactive for stop sequence)?

    What are your thoughts here?

    Mark

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Jesse Smith@21:1/5 to Mark Hindley on Wed Mar 5 15:30:01 2025
    This is a multi-part message in MIME format.
    On 2025-03-05 04:19, Mark Hindley wrote:
    Control: tags -1 upstream

    Jessie,

    I know this has been dormant for a long time, for which, apologies.

    On Sat, Jul 13, 2019 at 08:29:26AM +0000, Dmitry Bogatov wrote:
    I thing we already have everything needed. Essentially, insserv
    impements topological sorting, both on start sequence and stop sequence.

    On start, if "foo" has "Should-Start: bar", it means that "foo" will be
    started /after/ "bar".

    On start, if "foo" has "X-Start-Before: bar", it means that "foo" will
    be started /before/ "bar".

    On stop, if "foo" has "Should-Stop: bar", then "foo" is stopped /before/ >> "bar".

    On stop, if "foo" has "X-Stop-After: bar", then "foo" is stoppend
    /after/ "bar"

    So, any init script can specify arbitrary relations (before, after,
    irrelevant) with any other script. So, to make sure that your script is
    never executed parallel to some other, you have to use one of first two
    relations and one of last two.

    On other hand, we already have X-Interactive, which, strictly speaking,
    is not in basis (it can be expressed in terms of Should-Start and
    X-Start-Before).

    Jess, how much complexity would it be to implement X-Exclusive (or reusing >> X-Interactive for stop sequence)?
    What are your thoughts here?


    This is probably something we could work into insserv. I like the idea
    of a new X-Exclusive directive to isolate shutdown jobs instead of
    trying to overload X-Interactive. Right now, in the code, X-Interactive
    has a pretty specific meaning and it's geared toward start-up jobs only.


    <!DOCTYPE html>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    </head>
    <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">On 2025-03-05 04:19, Mark Hindley
    wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:Z8gJLjITWC5_ysKV@hindley.org.uk">
    <pre wrap="" class="moz-quote-pre">Control: tags -1 upstream

    Jessie,

    I know this has been dormant for a long time, for which, apologies.

    On Sat, Jul 13, 2019 at 08:29:26AM +0000, Dmitry Bogatov wrote:
    </pre>
    <blockquote type="cite">
    <pre wrap="" class="moz-quote-pre">I thing we already have everything needed. Essentially, insserv
    impements topological sorting, both on start sequence and stop sequence.

    On start, if "foo" has "Should-Start: bar", it means that "foo" will be
    started /after/ "bar".

    On start, if "foo" has "X-Start-Before: bar", it means that "foo" will
    be started /before/ "bar".

    On stop, if "foo" has "Should-Stop: bar", then "foo" is stopped /before/
    "bar".

    On stop, if "foo" has "X-Stop-After: bar", then "foo" is stoppend
    /after/ "bar"

    So, any init script can specify arbitrary relations (before, after,
    irrelevant) with any other script. So, to make sure that your script is
    never executed parallel to some other, you have to use one of first two relations and one of last two.

    On other hand, we already have X-Interactive, which, strictly speaking,
    is not in basis (it can be expressed in terms of Should-Start and X-Start-Before).

    Jess, how much complexity would it be to implement X-Exclusive (or reusing X-Interactive for stop sequence)?
    </pre>
    </blockquote>
    <pre wrap="" class="moz-quote-pre">
    What are your thoughts here?
    </pre>
    </blockquote>
    <br>
    <br>
    This is probably something we could work into insserv. I like the
    idea of a new X-Exclusive directive to isolate shutdown jobs instead
    of trying to overload X-Interactive. Right now, in the code,
    X-Interactive has a pretty specific meaning and it's geared toward
    start-up jobs only.<br>
    <br>
    <br>
    </body>
    </html>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)