I've been getting the following exception:
java.net.SocketException: Too many open files
on a Tomcat server running on Linux. I ran lsof - p <tomcat_pid> to see
what was going on and it seems that the trinidad jar file is being
opened far too many times:
.....
java 3693 tomcat 1004r REG 3,5 3646899 5359580
/usr/local/tomcat/shared/lib/trinidad-impl-1.0.2.jar
java 3693 tomcat 1005r REG 3,5 3646899 5359580
/usr/local/tomcat/shared/lib/trinidad-impl-1.0.2.jar
java 3693 tomcat 1006r REG 3,5 3646899 5359580
/usr/local/tomcat/shared/lib/trinidad-impl-1.0.2.jar
java 3693 tomcat 1007r REG 3,5 3646899 5359580
/usr/local/tomcat/shared/lib/trinidad-impl-1.0.2.jar
java 3693 tomcat 1008r REG 3,5 3646899 5359580
/usr/local/tomcat/shared/lib/trinidad-impl-1.0.2.jar
java 3693 tomcat 1009r REG 3,5 3646899 5359580
/usr/local/tomcat/shared/lib/trinidad-impl-1.0.2.jar
There seem to be around a 1000 file descriptors open for the trinidad
jar before the exception gets thrown. It's referenced much earlier in
the list along with other jars:
...
java 3693 tomcat mem REG 3,5 24432 5360898
/usr/local/tomcat/shared/lib/el-api-1.0.jar
java 3693 tomcat mem REG 3,5 3646899 5359580
/usr/local/tomcat/shared/lib/trinidad-impl-1.0.2.jar
java 3693 tomcat mem REG 3,5 1279296 5360913
/usr/local/tomcat/shared/lib/tomahawk-1.1.3.jar
...
Does anyone know why the trinidad jar would be opened so many times?
Thanks,
Steve