[
https://issues.apache.org/jira/browse/ODFTOOLKIT-300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13201172#comment-13201172
]
Devin Han commented on ODFTOOLKIT-300:
--------------------------------------
This is my test case. no exception. Could you share yours with me?
for (int i=0; i<100000; i++){
TextNavigation search = new TextNavigation("delete",
doc);
while (search.hasNext()) {
TextSelection item = (TextSelection)
search.nextSelection();
LOG.info(item.toString());
}
try {
search = new TextNavigation("delete",
doc.getContentRoot());
while (search.hasNext()) {
TextSelection item = (TextSelection)
search.nextSelection();
LOG.info(item.toString());
}
} catch (Exception e) {
Logger.getLogger(TextNavigationTest.class.getName()).log(Level.SEVERE,
e.getMessage(), e);
Assert.fail("Failed with " +
e.getClass().getName() + ": '" + e.getMessage() + "'");
}
}
> Memory Leak in ODF Simple API
> -----------------------------
>
> Key: ODFTOOLKIT-300
> URL: https://issues.apache.org/jira/browse/ODFTOOLKIT-300
> Project: ODF Toolkit
> Issue Type: Bug
> Components: simple api
> Affects Versions: 0.8.7
> Environment: odfdom-java-0.8.7.jar; simple-odf-0.6.6.jar
> Reporter: Mathias Silbermann
> Assignee: Devin Han
>
> There is a memory leak in the ODF Simple API. I tried both, versions 0.6.6
> and 0.6.5. It appears when running code like the examples on cookbook page
> http://incubator.apache.org/odftoolkit/simple/document/cookbook/Manipulate%20TextSearch.html
> In short, the call TextNavigation.nextSelection() leads to the leak. When you
> look down the method's call stack, you will find that items are added to the
> static variable "repository" of the static inner class
> "Selection.SelectionManager". The added items are never removed from the
> repository. One indication is that the method
> Selection.SelectionManager.unregisterItem() is never called.
> The code works fine if text navigation is done with few documents. But when
> its run on a server thousands of times, it will fill the JVMs memory.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira