Quoth Liane Praza on Wed, Mar 21, 2007 at 03:47:15PM -0700:
> Tony Nguyen writes:
> > Why does general/enabled property need to exist? Or I'm missing 
> > something here.
> 
> Currently, svc.startd takes the existance of a general property group
> on an instance as a key to take notice of the instance and start
> doing something about it.

I believe it is specifically general/enabled, since property groups are
always created empty.

> There are 2 main reasons for this:
> 1) startd doesn't do anything useful with a service that isn't enabled.

Well we do need to know when services are disabled, for dependency
computations.

> 2) It was a quickly-implementable way to ensure that startd didn't
>    notice a service until we finished importing it.  That is, during
>    svccfg import we set the general/enabled property *last* so that
>    startd doesn't try to start up a service that's half imported.

Additionally,

  3) svccfg implements dependents by creating dependency property groups
     in the dependent service.  If it doesn't exist, an empty service
     must be created, but it shouldn't be activated.

  4) To implement last-import snapshot we create temporary services,
     which need to have all the properties from the manifest, but
     shouldn't be started.


David

Reply via email to