I am currently looking at PR45605 (https://issues.apache.org/bugzilla/show_bug.cgi?id=45605) and the analysis and the resulting patch in Comment 4 look good to me (https://issues.apache.org/bugzilla/show_bug.cgi?id=45605#c4). As worker and event MPM are very similar I had a look if and how this patch is applicable to the event MPM. I noticed that ap_queue_info_wait_for_idler is quite different in worker and event MPM. One comment in the event version of ap_queue_info_wait_for_idler confuses me:
* A negative value in queue_info->idlers tells how many * threads are waiting on an idle worker. IMHO this would require ap_queue_info_wait_for_idler to be called by different threads, but I can only see calls via get_worker from the listener thread and AFAICT there is only one listener thread in event like in worker. Do I miss something here? If not, does the code need to stick to the behaviour mentioned in the comment (callable by different threads) or is the comment just wrong? A wrong comment would make it easy to transfer the worker solution to event. Otherwise an other solution needs to be found. Regards RĂ¼diger
