Re: init script behaviour

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 06/15/2010 03:08 PM, Joe Orton wrote:
> Any opinions on this?  I've had a query.
>
> What should "service xxxx start" do for a daemon - or more specifically,
> when should it return?  There is inconsistency amongst different current
> init scripts, two general approaches:
>
> 1) fire and forget: start the daemon, return immediately
>    
which might give "false positives" as in "service started (I've seen the 
OK on screen!) but not running

> 2) stop and wait: start the daemon, and wait, either:
>   a) a short fixed period of time, or
>   b) in a loop until the pidfile appears, with some maximum wait time
>    
which might give "false positives" as in "service started (also known as 
"pidfile exists but the process is dead") but not running"

> Notable implication of (1) is that running e.g. "service xxx status" (or
> stop etc) may not immediately succeed after a "start", nor may the
> service be immediately usable directly after a "start" returns.
>
> (2b) may have surprising failure cases of an init script waiting a long
> time to return - dirsrv will wait up to ten minutes, which seems rather
> extreme.
>
> (2a) may be unreliable, being dependant on timing/machine speed
>
> I found at least one init scripts which also has this stop-and-wait
> behaviour for "stop" (mysqld).
>
> I'd instinctively prefer (1) from a "do one thing and do it well"
> perspective; (2) starts down the road of a better/more complex form of
> service-monitoring/management and ends up doing it really badly in messy
> sh script in N places.
>
> (A logical extension of (2) would be to require not merely that the
> pidfile exists, but that the service is accepting connections on TCP
> port N, before returning from the init script "start" invocation)
>
> Thoughts?
Well, I'd say it depends on how we define the "start" part. "fire and 
forget",  "start and make sure it was started" or "start and make sure 
it is running".

-- 
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/devel


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux