I am running Tomcat 5.5.12.

I have noticed with lsof that every time a CGI script is executed within 
Tomcat, the number of file descriptors used by Tomcat increases by 1. Once in a 
while, the number of file descriptors drops to its initial level. However, I am 
seeing many instances where the number of file descriptors increases steadily 
until it reaches a large number (around 1000 files). At that point, when the 
script executes, the web server generates an HTTP status 500 error page. If I 
execute the script after the Web server has done some maintenance work and the 
number of file descriptors is back to an acceptable level, then, the CGI script 
executes without any issues.

I have done some experiments by running some java code as part of an 
application that runs on the Web server. If I run a system call (unsing 
Runtime.getRuntime().exec) and grab the input/output/error streams, but do not 
explicitly close them, the number of file descriptor in use increases and stays 
to this level for some time. Eventually, it comes back to the original number. 
I have the impression that there is a link between garbage collection and the 
recylcing of file descriptors.

Anybody has experienced something similar? Is this an issue that should be 
solved in Tomcat. Are there workarounds?

Martin


                        
---------------------------------
Yahoo! Photos
 Got holiday prints? See all the ways to get quality prints in your hands ASAP.

Reply via email to