[
http://jira.jboss.com/jira/browse/JBSEAM-2436?page=comments#action_12402998 ]
Pete Muir commented on JBSEAM-2436:
-----------------------------------
What I don't understand is *where* you expect the entities to get destroyed? Clearly
you are holding a strong reference to them in your session bean, so they won't be
garbage collected until the session is timed out. And it sounds to me, from this bug
report, that this happens.
I'm still not really following you I'm afraid:
"If you have a session-scoped SFSB which holds entites, the entities do not get
destroyed."
Can you clarify? The entities don't get destroyed when the SFSB is destroyed?
"So in production where many instances of the SFSB is created this leads to
OutOfMemoryException IF the session timeout is not set to 2 minutes,"
Ok, are you sure this is just because the session has not timed out yet?
"because then the instances will be destroyed(!)."
Just to clarify this sentence - you are saying the OOME occurs if the timeout is set
longer than 2 minutes? And if you set it to 2 minutes the OOME occurs, because the SFSB is
destroyed after 2 minutes and the hard references are lost so the garbage collection can
occur.
"I have investigated this for many many hours and watched the number of entities just
growing"
And here is the heart of what I don't understand. What does this mean. How are the
entities just growing? Do you mean the number being held by the JVM seen through a
profiler? Or the number inside your ObjectPool is increasing (magically as you have no
code to do this)?
So, the question boils down to this:
Do the entity references stay around longer than the SFSB references? If so, this is
possibly a bug, otherwise definitely not.
If this is the case, please try with Seam POJOs. If it is ok with Seam POJOs, then we
need to move this issue to the EJBTHREE JIRA.
Session-scoped SFSB which holds entities leaks memory
-----------------------------------------------------
Key: JBSEAM-2436
URL:
http://jira.jboss.com/jira/browse/JBSEAM-2436
Project: JBoss Seam
Issue Type: Bug
Components: EJB3
Affects Versions: 2.0.0.GA
Environment: Suse Linux, JBoss 4.2.2.GA, Java 1.6.03, PostgreSQL 8.2
Reporter: Susanne Jarl
Assigned To: Pete Muir
Fix For: 2.1.0.GA
Session-scoped SFSB which has entities in an object does not get destroyed. It leads to
memory leak in production. Please read:
http://www.jboss.org/index.html?module=bb&op=viewtopic&t=126542
The problem appeared after upgrading to Seam 2.0.0.GA. My code worked fine in Seam 1.2.1.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira