OutOfMemory error occurs, but profiler shows half the heap is free?!?!
So here is my situation: I have a web application (MyFaces+Hibernate) running on BEA WebLogic 8.1 (either with Sun JVM 1.4.2 or the included JRockit VM). While profiling the application, trying to find memory leaks, I came to an OutOfMemory error, while the profiler showed that half the heap was free (the other half could not be freed).
So my question is this: Are there any common reasons for situations like this? The only things that come to my mind are:
a) Some very big method needed more than the available heap memory
b) The profiler is wrong
c) I miss something
Any help would be appreciated!
Thanks in advance.