Created attachment 23462 [details] Patch to delay the message and issue a different one earlier The "MaxClients reached" message occurs as soon as the number of idle threads drops below MinSpareThreads. If MinSpareThreads is set large for some reason, there could still be a lot of idle threads so the message is misleading. The attached patch saves the "MaxClients reached" message until there are no idle threads, which seems more accurate. It issues a new message when the number of idle threads drops below MinSpareThreads. Neither message will be issued more than once per child.
This issue also exists in 2.2.14. It's incredibly misleading to have it print MaxClients has been reached when it's really just below the MinSpareThreads. Especially if you run a config with a high MinSpareThreads number. I would recommend that it say something like "the number of idle threads has dropped below the min spare thread number". That would make it easier for people not 100% familar (like myself :) ) with the code capable of tracking down issues.
(In reply to comment #0) > The attached patch saves the "MaxClients reached" message until there are no > idle threads, which seems more accurate. It issues a new message when the > number of idle threads drops below MinSpareThreads. Neither message will be > issued more than once per child. Dan, is there a reason why you haven't commited that patch, yet?
Just forgot about it since getting committer. Committed to trunk, r906535 As I recall, fixing it in 2.2.x looked a little more complicated. I'll take a look at that next.
Backported to 2.2.x as r910320