:: Re: [Dng] printing (was Re: Readine…
Página Inicial
Delete this message
Reply to this message
Autor: Laurent Bercot
Data:  
Para: dng
Assunto: Re: [Dng] printing (was Re: Readiness notification)
[ 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