[
https://issues.apache.org/jira/browse/ODE-574?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ciaran Jessup updated ODE-574:
------------------------------
Attachment: StopListenersHangingAbout.patch
The attached patch (I think, will confirm in the morning [GMT]) may no longer
be neccessary given the other changes, but I"ve put it in just to be safe, this
handles (I think) the case where the CompileListener ends up associated with
items in the Stylesheet cache, as the compileListener contains a reference to
the OProcess this keeps the reference in memory for-ever :( ... The other
patch may make this patch redundant, will check shortly. However! The
setErrorListener method seems particular thread-unsafe, I can't see what guards
there are that the TransformerFactory underlying the cache won't be called from
multiple places con-currently, and possibly mis-report errors ???
> 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: StopListenersHangingAbout.patch, 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.