You are viewing a plain text version of this content. The canonical link for it is here.
Posted to olio-user@incubator.apache.org by Harold Rosenberg <hr...@vmware.com> on 2010/03/26 20:19:33 UTC
Memory leak in Olio/Java?
I have been doing some testing with the Java version of Olio (on Glassfish v3), and have noticed that there appears to be a memory leak in the application. I never seem to run into an out-of-memory exception (although I may not have run long enough), but if I watch the heap with visualgc, I can see that the tenured generation slowly fills up, and when a full gc occurs very little space is freed. If I run long enough, the tenured generation gets entirely full and the application spends all of its time in gc.
At first I thought that this was due to running with the MapCache. However the same thing happens even if I disable caching. From looking at a heap dump, it appears that it is possible that eclipselink may be holding on to references to every object that it creates, although I'm not sure that I understand what is happening well enough to be sure.
Has anyone else seen this? I would like to be able to run for a long time, and this effectively prevents that from working. Any ideas on how to fix this?
Thanks,
Hal Rosenberg
Re: Memory leak in Olio/Java?
Posted by Kim LiChong <Ki...@Sun.COM>.
Hi Harold,
How long do you run for before observing these symptoms? I haven't done
any long runs with v3 but with v2, I did not observe this behavior
(although we did not run for longer than 20 minutes).
You might want to check with the eclipselink community to see if there
is a known bug for this issue.
Kim
>
> I have been doing some testing with the Java version of Olio (on
> Glassfish v3), and have noticed that there appears to be a memory leak
> in the application. I never seem to run into an out-of-memory
> exception (although I may not have run long enough), but if I watch
> the heap with visualgc, I can see that the tenured generation slowly
> fills up, and when a full gc occurs very little space is freed. If I
> run long enough, the tenured generation gets entirely full and the
> application spends all of its time in gc.
>
> At first I thought that this was due to running with the MapCache.
> However the same thing happens even if I disable caching. From looking
> at a heap dump, it appears that it is possible that eclipselink may be
> holding on to references to every object that it creates, although I’m
> not sure that I understand what is happening well enough to be sure.
>
> Has anyone else seen this? I would like to be able to run for a long
> time, and this effectively prevents that from working. Any ideas on
> how to fix this?
>
> Thanks,
>
> Hal Rosenberg
>