[kepler-dev] about the libraryModels variable in org.kepler.objectmanager.library.LibraryManager class.
Jianwu Wang
jianwu at sdsc.edu
Thu Oct 7 15:44:27 PDT 2010
Hi Sean,
I have a question about the libraryModels variable you added in
org.kepler.objectmanager.library.LibraryManager class.
It saves EntityTreeModel objects with key as filterKeyword, and the
EntityTreeModel objects will be reused for the same filterKeyword. When
a new Kepler window is open, the function EntityTreeModel
getTreeModel(String filterKeyword) will be called with 'null' for
filterKeyword. So the same EntityTreeModel object is used by multiple
Kepler windows and can not be released after closing some windows. It
brings memory leaks.
I simply removed the libraryModels variable and created a new
EntityTreeModel object in the function EntityTreeModel
getTreeModel(String filterKeyword). My tests so far haven't show the
differences for Kepler functionality and the memory leak is gone. You
can find my changes from the attachment.
I don't know the reason of your initial design. So your feedback on
my changes are welcome. Thanks.
--
Best wishes
Sincerely yours
Jianwu Wang
jianwu at sdsc.edu
Assistant Project Scientist
Scientific Workflow Automation Technologies (SWAT) Laboratory
San Diego Supercomputer Center
University of California, San Diego
San Diego, U.S.A.
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: LibraryManager.java
URL: <http://mercury.nceas.ucsb.edu/kepler/pipermail/kepler-dev/attachments/20101007/ee4fc1d8/attachment-0001.ksh>
More information about the Kepler-dev
mailing list