I've a test system where I see the tenured heap usage increase to 100% and then fall back to ~50%. This keeps happening continuously.
The application is started with following JVM args:
-Xms512M -Xmx512M -ea -XX:OnOutOfMemoryError=/bin/kill -9 %p
I don't see any logs that generally appear on application restart.
Why are you killing the process on
OutOfMemoryError? Instead why don't you collect the heap dump file and see why it's full?and open the resulting dumpfile with Eclipse MAT.
Also, I think the option needs to be quoted:
In reference to your question: No, the process will not restart - it will just terminate when the tenured heap is filled.