Closed afischer211 closed 9 years ago
There should not be any issue like that. "Should" :wink:
Did you try a manual "GC" using JMX and check the heap usage using JMX? At some point the instance might allocate that much (especially if you are not using the filesystem BLOB store). And Java tends to keep the memory. Although I've seen Java 8 actually deallocating.
If the actual used memory (as seen by JMX) does not shrink after a GC, you would need to make a heap dump. I can walk you through this is you need help there.
Hello, thanks for your answers. We use the filesystem BLOB store and the whole systems runs under CentOS7 with a MySQL database. I will run some more analytics tomorrow.
Ok, it would be good to have an actual memory dump in that state. I can walk you through the steps if you need help.
I understand if you cannot give me access to that. But you can use Eclipse and the memory analyzer to load the dump and check for leaks.
After analysing with Java VisualVM I can see, that the JVM allocates the complete heap until 7GB but only uses an amount of 3.5-4GB. This amount is not growing anymore. So I think, also with parameter -Xmx4096m the system should run good. Now I see no memory leak and we can close the issue. May be you can add some installation hints about good values for Xmx and Xms to the wiki?
Ok, nevertheless the next version will have a new view which shows the basic memory usage and allows to issue a GC in the Web UI.
We run package-drone with following JVM-params: -Xmx7168m -Xms1024m -XX:+UseG1GC
The used Java-VM is Java8u45 (64Bit).
After some hours/days the instance run with a heap of 6.5 - 6.8GB and shrinks not anymore. Is the available heap used for caching (and not deallocated/garbage-collected anymore) or is there any memory-leak?