Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Duplicate
-
10.6.2.1
-
Derby Server 10.6.2.1 on Windows 7 with Derby JDBC Client 10.6.2.1 connections. Client uses OpenJPA as ORM Provider
-
Crash, Seen in production
Description
After some uptime, my Derby Server goes OOM with the following errors:
2011-10-03 10:35:21.002 GMT : Security manager installed using the Basic server security policy.
2011-10-03 10:35:23.295 GMT : Apache Derby Network Server - 10.6.2.1 - (999685) started and ready to accept connections on port 11527
Exception in thread "DRDAConnThread_12" java.lang.OutOfMemoryError: Java heap space
Exception in thread "NetworkServerThread_2" java.lang.OutOfMemoryError: GC overhead limit exceeded
Exception in thread "DRDAConnThread_3" java.lang.OutOfMemoryError: GC overhead limit exceeded
I suspect that I create transactions that are too big, so the OOM is not really of concern to me here untill I have investigated the actual cause.
However I would expect the Derby Server to recover from this situation as soon as the connection to the Client application is closed, but this does not seem to happen, I have memory dumps from a point in time when the Client was already closed and they show that there are still large instances of RAMTransaction kept in memory.
I will attach screenshots from MAT which shows the memory usage and the objects keeping this in memory, please adjust handling of OOM so that the memory is freed here.