On Thu, 30 May 2019 23:29:10 +0100 RW wrote: > On Thu, 30 May 2019 23:24:06 +0200 > Yves Goergen wrote: > > > > BTW, why doesn't the --max-children option do anything? There are > > always 5 child processes, no matter how busy they are. And when > > they're all busy, nothing works anymore. > > I couldn't reproduce this on FreeBSD with perl 5.28.
Actually I can, and any email causes it. With -max-children=20 --min-children=5 , if I start 20 spamc instances, the number of children remains at 5. If I kill one of the children many are spawned instantaneously. Children can be spawned from the old code in spamd, if the number drops below the minimum, or from the scaling code, which is event driven based on child messages. I'm guessing that when the code in spamd replaces the killed child it creates a cascade of events for the scaling code to use, but something is going wrong when the spares drop below min-spare. I'm sure this is a regression, rather than a long-standing bug.