On 1/25/12 11:41 AM, Brian Geffon wrote:
Hi everyone,
I was hoping someone might have an idea on this. So EventProcessor relies on 
two #defines when it's constructed namely MAX_EVENT_THREADS and 
MAX_THREADS_IN_EACH_TYPE (see I_EventProcessor.h), as of now they are both set 
to 512. Unfortunately, if you wanted to use ATS to listen on a large number of 
ports (500+) this becomes a problem if you're using accept threads.

So I wanted to remove these #defines and potentially make them configurable as 
part of my fix for the arbitrary limit on the number of ports you can listen on…


This is a fairly "common" problem. I've seen (and used) two solutions:

1) Manually read records.config ... Yes, we do that in a few places, which is why those configs must be in records.config always, or the server will break. There's some ~10 or so configs like this. FUGLY!

2) Less flexible, but less ugly, is to make these things ./configure'able. I did that for example for the max number of entries that librecords can hold. As you can imagine, I can't use the librecords APIs to get that setting, since, ehm, it's not available. And I really didn't like the idea of doing #1 above.


My vote would be to make this default "fairly high", and make it easily overridable via configure.ac.

-- leif

Reply via email to