Hi Paolo,

On 26.10.2011 12:15, Paolo Castagna wrote:
You can explicitly call System.gc(), but the JVM will run the GC anyway
every once in a while... that will close the file handles (even without
you explicitly call System.gc()), isn't it?

Yes, System.gc() takes place now and then. Unfortunately I was able to leave more than 2000 file handles open within one hour (moderate usage of our platform). I could imagine that we'll encounter problems with open file handles as soon as thousands of users will use it.

Anyway, the framework is great and I'm pretty sure that people usually do not experience any problems, especially when using one graph with named subgraphs. I just wanted to share the information for the small number of users wondering about "Too many open files" exceptions even if they close the graph.


Have you tried not to call System.gc() and monitor your app with a
profiler or jconsole which will show when the GC is executed and check
file handlers are closed?

Nope, I only saw that some of the file handles are not closed and remain open for a very long time. I think, the reason is that there is enough memory for the VM and gc() is rarely required (in our case).


Greetings
André

--
Dr. André Lanka  *  0178 / 134 44 47  *  http://dr-lanka.de

Reply via email to