Author: Rainer Weikusat Date: To: dng\@lists.dyne.org Subject: Re: [DNG] [announce] s6-rc,
a s6-based service manager for Unix systems
Simon Hobson <linux@???> writes:
[...]
> Rainer Weikusat <rainerweikusat@???> wrote:
>
>>> * anything that uses the syslog should start after the syslog.
>>
>> That's the same misunderstanding already shown elsewhere: Starting
>> syslog at time X and starting syslog-user at time Y, Y > X, Y - X being
>> 'very small', does not guarantee syslog will already be available at
>> time Y and neither that it will still be available provided it became
>> available in the time interval between X and Y.
[...]
> Of course, regardless of what system or definitions you use - if a
> service then dies then you have a problem. IMO, "it might die at some
> indeterminate time" isn't an excuse for not trying to get the "start
> stuff up" part right.
There is a way to get this wrong, namely, don't ever start the
server. In this case, failure is guaranteed. But there's no way to get
it "right" in the sense of "there's some kind of algorithm execution of
which guarantees success": No matter if you start syslog first, last, or
at some random position in a sequence of server start, it might or might
not be ready by the time some other program tries to use it. If some
program must not continue beyond the point where it tries to log a
message unless the message is (at least) received by a logging process,
some form of explicit locking has to be used to ensure that.