This document describes how the file descriptors are maintained by the kernel as their usage is dependent on the Operating System (OS).When the Cisco Information Server (CIS) requests are handled, there might be a requirement to open several file descriptors while the request is processed. Therefore, CIS as an application is an OS specific setting with no control on setting the limit for file descriptors.
What should be the limit for file descriptors when using CIS?
Modifying the open file decriptor limit on Windows is a bit more challenging than the linux environment, since it is handled by a runtime library. However, _setmaxstdio method can be used to configure the number of simultaneously opened files permitted at the stdio level. Default limit on Windows is 2048.
By using ulimit -n <value> on linux or AIX open file descriptor limit can be changed.
The default limit on linux Cent OS is about 16,000 while on AIX 6.1 it is 2,000 only.
On linux or AIX, you cannot set the values to unlimited. If you run into "too many open files" error, it is worth to investigate the data points and the queries that lead to that error as then the limit is incremented by 1,000 or 2,000 interval, until the issue is no more reproducible.
File descriptor usage for CIS can be monitored on linux or AIX with these commands :
ps -ef | grep java ( to get the product IDs)
lsof -p <PID>
lsof -a -<PID>
A suitable limit can generally be determined only by a fine tuning exercise.