users@glassfish.java.net

Re: TopLink Essentials cannot handle large transactions, makes JVM run out of memory.

From: <glassfish_at_javadesktop.org>
Date: Mon, 10 Sep 2007 07:27:12 PDT

Hi Witold,

this is a known problem. I duscussed this already with Gordon Yorke. I took a short look into what's happening, but I had no time to investigate in detail. It seems that Toplink creates ChangeSets, that refelect the changes within one transaction. The code seems to be not very memory efficient, especially when you perform multiple flush operations on the EntityManager within one transaction. (Entire ChageSets seem to be copied/duplicated). I found no work around for this so far. You could use a different persistence provider. According to my findings openJPA did only take up 1/10 of the memory of toplink in my use case.

Regards
Heiko
[Message sent by forum member 'hewagn00' (hewagn00)]

http://forums.java.net/jive/thread.jspa?messageID=234673