[Mailman-Developers] Mailman queue design problem?

Jeb Bateman jeb@ocha.net
Sat, 23 Jun 2001 08:33:24 -0700


On Fri, Jun 22, 2001 at 01:59:28AM -0400, Barry A. Warsaw wrote:
> 4) The qrunners are long running processes, monitored by a cron
>    spawned watchdog.  Pros: on a warmed up system, delivery occurs
>    almost immediately, with start up delays amortized over the life of
>    the qrunner (Python 2.0's cyclic garbage collector helps keep
>    memory usage under control).  Cons: debugging is, er, more
>    challenging because you have to kill the master qrunner whenever
>    you (really, I ;) make a change to the code.

I'm curious, would it be possible to make the delivery pipeline fork a
qrunner (after checking that one is NOT already running) ??

The advantage would be no cron, and qrunner could start immediately
whenever it's needed, (if one is not already running), and then die
naturally (freeing the processor and memory) when it's not.  (There
could be a configurable amount of time for it to 'sleep' before it
exits after it's work is finished, and it finds no new work to do...)

I remember reading that Postfix kills programs it starts if they run
too long, but does that also apply to forked processes?

Thanks,
-jeb