Jordan Brown writes:
> James Carlson wrote:
> > I'm no fan of the "must dial 1 first" school of interface design, but
> > I'm not sure that having failure into offline mode occur in two
> > different orders (reverse order if done by administrative action,
> > forward order if done by actual service failure) is a good thing.
> 
> Yeah, but... they *are* two different cases.
> 
> One is an orderly shutdown.
> 
> The other is recovery from a failure.

It's not an orderly shutdown if you request to have a service with
hard dependencies shut down and you don't also ask to have those
dependencies shut down as well, is it?

I'll argue that anything that sents the same set of flags to the same
state ought to be time-invariant, if it's going to be comprehensible
to mere mortals.

So, run the scenario in the forwards order: if you enable those
dependent services without ever having enabled the required dependency
enabled, then the dependent services end up in "offline" state without
ever having run in any order.

I think that if we allow a dependency in the middle of the tree to be
yanked out arbitrarily, we should end up in the same state as if we'd
enabled everything but skipped over that one entity.  That means
getting them into "offline" state in either case.

That's also the same as if we had failed this dependency, and we thus
had to tear everything down after the fact -- basically ignoring the
reverse-order "requirement."

At this point, the question I'm asking is whether you should be able
to enter "offline" state in both orders or just one.  I think entering
it in just one order (failure-like semantics) makes more sense.  It
even allows for more obvious testing scenarios by just disabling a
required service to make sure that failure handling "works" (whatever
that means ;-}).

> However, we're not talking about the failure case here - we're talking 
> about an orderly shutdown due to administrative action.

... an administrative action that arguably puts us into a failure
case: missing required service.

-- 
James Carlson, Solaris Networking              <james.d.carlson at sun.com>
Sun Microsystems / 35 Network Drive        71.232W   Vox +1 781 442 2084
MS UBUR02-212 / Burlington MA 01803-2757   42.496N   Fax +1 781 442 1677

Reply via email to