[ Didier ]
What happens then? Does the webprinting service crash? Or does it
hang until Cups is ready? Is it able to detect that it is hanging?
The last would probably be the most sensible way to handle the
dependency :-) A professional webprinting service should be able to
do that. And this is what Cups itself does when a printer is paused.

 Yes, of course services should fail gracefully when their dependencies
are not met. "should" being the operative word here. In reality,
professional or not, few programs test their error paths thoroughly.
Often, the best behaviour when encountering such an issue is simply
to exit. You cannot ask every service to hang until their dependencies
are met - exiting with an error message is much simpler.
 As an admin, I'd rather not experiment with all the error paths in
all the services I'm launching. I'd rather make sure they work.


[ Stephanie ]
I'm firmly in the camp that process supervision is evil, because
service failures on a *nix system should not happen

 They should not happen. But they do.
 And auto-restart is not the only thing that process supervision gives
you. Ease of process management is a big one for me.


and when they do
they should be a really big inconvenient deal that wakes people up at
3am - because that's the sort of thing that gets problems noticed and
fixed.

 Nothing prevents you from having an alert that wakes the admin up
when the service fails. But while the admin is waking up and logging
in, it's better if the service has been restarted and is trying to
be operational.


Process supervision trivializes failures, and leads us down a
path of *tolerating* them and fixing the symptoms instead of fixing
the problem

 No, it does not. If your admins use process supervision as an excuse
to be complacent with failures, the problem lies with your admins, not
with process supervision.

--
 Laurent
_______________________________________________
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng

Reply via email to