[ https://issues.apache.org/jira/browse/ODE-574?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12696764#action_12696764 ]
Karthick Sankarachary commented on ODE-574: ------------------------------------------- I took a quick look at your patch, and I have to say that it seems overly complicated, just because of the way the cache is structured. I'd rather play it safe, and tweak the multi-key a little bit so that it becomes easier to purge process-specific data. To that end, I suggest replacing the baseUri component of the multi-key with the processQName, so that it becomes the tuple <processQName, uri> as opposed to <baseUri, uri>. The processQName can be obtained through CompilerContext.getOProcess().getQName(). WDYT? > Memory leak when Un-deploying processes that contain XSL stylesheets > -------------------------------------------------------------------- > > Key: ODE-574 > URL: https://issues.apache.org/jira/browse/ODE-574 > Project: ODE > Issue Type: Bug > Components: BPEL Compilation/Parsing, BPEL Runtime > Environment: N/A > Reporter: Ciaran Jessup > Attachments: StyleSheetCache.patch > > > Currently if the BPEL process contains any XSL stylesheets it will not free > up *all* the memory that was allocated during the compilation/dehydration of > the process. This seems to be because there is a cache of XSLTemplates > stored in the XSLTransformHandler, and these XSLTemplates can sometimes > contain (transitive) references back to the OProcess object instances (via > for example the URIResolvers/XPAth Expressions). Unfortunately this cache > lives forever (crucially even after the process has been un-deployed) > because of this the object graph hanging from the OProcess object instance is > never available for the GC to pick-off. > There is also another reference issue in the ErrorListener that is associated > with the XSLTransformHandler instance, but I don't really understand that bit > of code just as yet, a patch for the former issue follows, I'm reviewing the > ErrorListener issue currently. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.