[jbosstools-issues] [JBoss JIRA] Commented: (JBIDE-4740) Hibernate console has a memory leak

Denis Golovin (JIRA) jira-events at lists.jboss.org
Sat Aug 15 04:03:26 EDT 2009


    [ https://jira.jboss.org/jira/browse/JBIDE-4740?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12480994#action_12480994 ] 

Denis Golovin commented on JBIDE-4740:
--------------------------------------

That's not a memory leak, but behavior of Display.asyncExec(Runnable). During JUnit Tests execution it just have no time to execute scheduled asyncExec runnables and the stack in a messages field and keep links on actually closed XML editors. That happens because editors uses anonymous classes for runnable and thus it contains reference to enclosing class. Right solution for that is makin editor aware of all its scheduled runnables and clean reference on editor in scheduled runnables if during editor closure.

But that happens only during tests, which means tests should be adjusted.

First of all editors should be closed after each test, not after all tests like it does now.

Need to force clean up of async Runnables in display.

First method run Display.readAndDispatch() several times. 80 times for my desktop reduced test time from 582 sec to 365 sec. and reduce consumed memory during the tests from 500M to 300M. Problem is that 80 is magic number that could be different for different computers.

Another way invoke Display.runAsyncMessages(true) by reflection, in this case, tests time remains the same, but memory consumption changes the same way fro 500M to 300M.

> Hibernate console has a memory leak
> -----------------------------------
>
>                 Key: JBIDE-4740
>                 URL: https://jira.jboss.org/jira/browse/JBIDE-4740
>             Project: JBoss Tools
>          Issue Type: Task
>          Components: Build/Releng, Hibernate
>    Affects Versions: 3.1.0.M3
>         Environment: Ubuntu 9.04 x86
> Java 1.5.0-18
>            Reporter: Denis Golovin
>            Assignee: Vitali Yemialyanchyk
>             Fix For: 3.1.0.M4
>
>         Attachments: dump6_Leak_Suspects.zip, dump6_Top_Components.zip, dump6_Top_Consumers.zip, jconsole-memory.png
>
>
> I've noticed tests amount of tests on hudson is jumping. It seems to depend on host where tests has been executed. The problem is OutOfMemoryException in hibernate console tests. I ran those tests localy and have a graph from jconsole for java heap (see attachment).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jbosstools-issues mailing list