Jeremy Hylton wrote:
On Sat, 2004-01-17 at 18:30, Jamie Heilman wrote:
Its desirable in some circumstances, but not all. Part of the problem is people tend to blindly follow the traditional approach to daemon design without bothering to actually do any critical thinking.
I expect you don't intend to sound rude, but this gives the impression you think I've failed to do some necessary critical thinking. Even if I you think that, it's hardly diplomatic to point it out.
No I don't think you failed in any way, sorry if I gave that impression. I intended to bemoan the overall state of what are generally espoused to be "best-practices" when it comes to daemon design. As you said, the umask code only comes into play when explicitly asked for, and I think thats a really good thing, my initial concern was that the umask would be set to a default value regardless of the parent process's properties.
There are several very reasonable arguments for deviation from the historical approach.
What are they?
They were listed in the URIs, but the jist is that its better to let small dedicated programs handle the daemonization and supervision of long-running code, than it is to embed those gymnastics into the code itself.
I don't follow how this advice relates to the current discussion. We're talking about whether zdrun.py should have a --umask option.
Ah, well, you are maybe--to me I see an error thats carping about a missing "umask" attribute value and no mention of zdrun, so it wasn't immediately clear to me which aspects of zope the umask would apply to. Now that I know its part of a broad (entire process group) control mechanism I'm less concerned.
Anyway, if you want to question authority, consider reading: http://homepages.tesco.net/~J.deBoynePollard/FGA/unix-daemon-design-mistakes...
I don't see how this questions authority. It sounds entirely compatible with the design of zdaemon.
Well, yes, to an extent. There's a large breakdown when it comes to the design of event logging.
(The TCP/IP stuff doesn't apply to zdaemon, and Zope works differently, but that's typical for app servers.)
agreed
Are you familiar with zdaemon?
In purpose yes, but I don't use it in production. -- Jamie Heilman http://audible.transient.net/~jamie/ "Paranoia is a disease unto itself, and may I add, the person standing next to you may not be who they appear to be, so take precaution." -Sathington Willoughby