Hi All,
Servlet failed with IOException: java.io.FileNotFoundException:(Too many open files)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at weblogic.utils.classloaders.FileSource.getInputStream(FileSource.java:31)
at weblogic.servlet.internal.WarSource.getInputStream(WarSource.java:65)
at weblogic.servlet.FileServlet.sendFile(FileServlet.java:400)
In this post I’ll try to give some general guidelines on how to go about troubleshooting "Too many open files" exception.
File descriptors are handles used by a process to identify an open file.
Too many open files exception is thrown when a particular process runs out of File Descriptors.
To troubleshoot it we need to first check the file descriptor limits.
It is logged in the server logs
<BEA-000415> <System has file descriptor limits of – soft: 1,024, hard: 1,024>
You can verify the Max FD's assigned for a process.
plimit <pid>
Check if the system has enough FD’s and what percentage of available FD’s are being used by the process.
Check with the developers whether those files should be opened at that time or not.
Increasing the File Descriptor limit can be a temporary work around.
ulimit -n 65535
(This can be done in “commEnv.sh” script provided by WLS inside <WL_HOME>\common\bin)
No comments:
Post a Comment