connection limits: how to overcome?

Dearest DS guru!

I'm afraid this question is quite often here. And I've seen some instances, but I failed to find any usefull information.

I have SunDS 5.2 running on RHEL 3.

One day I've experienced the problem of open FD limit (the message in the error log file:

ERROR<12293> - Connection - conn=-1 op=-1 msgId=-1 - fd limit exceeded Too many open file descriptors - not listening on new connection)

So as it is advised in the tuning manual I've changed the OS limits (at this time I have ulimit -n 65535 in both /etc/profile and in the script which starts up the DS) and I've also changed the nsslapd-maxdescriptors in the directory itself (set it to 65535).

But unfortunately it looks like DS has not applied the changes. Although I was permited to change the nsslapd-maxdescriptors (so he knows about new OS limit, as when the OS limit was 1024 I wasn't able to set maxdescriptors more than 1024) I still have the limitation of allowed connections set to 960 (it is 1024 = 960 + 64, where 64 is nsslapd-reservedescriptors).

The value of nsslapd-maxconnections is set to 0. My attempts to increase it fail with the message:

additional info: max connection out of range. Valid range is [1..1024].

So, the question is: why does DS consider the connection number limit to be 1024 when the maxdescriptors set to 65535.

Thanks a lot!

[1412 byte] By [nolka] at [2007-11-26 17:28:10]
# 1

You may want to check these procedures for setting the limits on file descriptors for Linux: <http://docs.sun.com/app/docs/doc/819-2561/6n4rfhrkc?a=view#abejj>

Directory Server makes a system call to retrieve the maximum number of filedescriptors (sysconf(__SC_OPEN_MAX). If the number is lower than the one configured, the server will reject it.

Regards,

Ludovic

ludovicpa at 2007-7-8 23:56:06 > top of Java-index,Web & Directory Servers,Directory Servers...
# 2

Hi!

Thanks a lot for the link - the page contains quite good information regarding Linux tuning. And it is good to have all those things in one place.

But I've already seen those tunings and have applied them - they helped just partialy.

Although basicaly they are quite proper, but in my case I have not done one thing only - I didn't restart the slapd after having changed the nsslapd-maxdescriptors.

I was told that if I changed the nsslapd-maxdescriptors via ldapmodify it is not neccessary to restart slapdm but that is not the case. Even after setting the nsslapd-maxdescriptors=65535 a could not set the nsslapd-maxconnections higher than 1024 and the value of dtablesize (under dn: cn=monitor) was 1024.

At last I got an opportunity to restart the slapd and now I can change the nsslapd-maxconnections in 1-65535 range and the value of dtablesize is now 65535.

That is all...

it works :)

Thanks a lot!

nolka at 2007-7-8 23:56:06 > top of Java-index,Web & Directory Servers,Directory Servers...