Thanks for precise description and code analysis, Frank.

The issue (and a couple of connected issues) has been fixed in git master.

Could you build MHD from git sources and check whether the issue is fixed for you?

Thanks in advance.

--
Evgeny

On 04.12.2021 21:56, Frank Ch. Eigler wrote:

Evgeny Grin wrote:

Could you share your MHD flags, options, and commands you use to
measure MHD load?

That could be tough, but see git://sourceware.org/git/elfutils.git
debuginfod/debuginfod.cxx.  The key bits appear to be:

- cgroups/ulimits impose a limit of a small number of tasks (threads)
- THREAD_PER_CONNECTION mode
- a http service callback that takes enough time to build up some
   concurrency, maybe just a sleep(10)
- then hit it with enough concurrent load to exceed the limits on tasks,
   so MHD_create_named_thread_() fails a bunch of times
- then ease the load rate back to nothing
- but observe that daemon->connections remains way above zero, maybe >1000
- and then even mild load starts getting rejected with the $subject error


- FChE



Reply via email to