Hi... my site in production has been running and after our latest code change we started to get the error below after a few days. It appears it is something to do with wicket's PageMap. In the past this error would come up after weeks or months of the app running [we were re-starting tomcat fairly regularly back then]. The sys-admin of the box said he increased the open file limit from 1024 to 65535 per the following thread [http://osdir.com/ml/users-wicket.apache.org/2009-09/msg00674.html ]. However this seems like a hack and not solving the underlying problem. In fact we got the exception thrown even quicker after the file limit change was made.
We are running wicket 1.4.3 [yes, it is an outdated version and moving to 1.4.16 *may* solve the problem.] Any ideas? What can we be doing wrong? 2011-03-03 15:42:26,681 | [] | ERROR (DiskPageStore.java:930) Error flushing page java.lang.RuntimeException: java.io.FileNotFoundException: /usr/share/apache-tomcat-6.0.20/work/Catalina/localhost/_/wicket-spring- hibernate-filestore/7815/9545/64D2A385CF347B9FF9074C8345CA99FB/pm-null (Too many open files) at org.apache.wicket.protocol.http.pagestore.FileChannelPool.newFileChannel (FileChannelPool.java:103) at org.apache.wicket.protocol.http.pagestore.FileChannelPool.getFileChannel (FileChannelPool.java:170) at org.apache.wicket.protocol.http.pagestore.DiskPageStore$SessionEntry.sav ePage(DiskPageStore.java:241) at org.apache.wicket.protocol.http.pagestore.DiskPageStore.flushPagesToSave List(DiskPageStore.java:924) at org.apache.wicket.protocol.http.pagestore.DiskPageStore$PageSavingThread .run(DiskPageStore.java:996) at java.lang.Thread.run(Thread.java:619) Caused by: java.io.FileNotFoundException: /usr/share/apache-tomcat-6.0.20/work/Catalina/localhost/_/wicket-spring- hibernate-filestore/7815/9545/64D2A385CF347B9FF9074C8345CA99FB/pm-null (Too many open files) at java.io.RandomAccessFile.open(Native Method) at java.io.RandomAccessFile.<init>(RandomAccessFile.java:212) at org.apache.wicket.protocol.http.pagestore.FileChannelPool.newFileChannel (FileChannelPool.java:98) ... 5 more