ode-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ciaran Jessup (JIRA)" <j...@apache.org>
Subject [jira] Updated: (ODE-574) Memory leak when Un-deploying processes that contain XSL stylesheets
Date Tue, 07 Apr 2009 21:54:12 GMT

     [ https://issues.apache.org/jira/browse/ODE-574?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Ciaran Jessup updated ODE-574:

    Comment: was deleted

(was: Your proposal makes sense, the only reason I didn't want to do something like that was
the scale of the change,   I *thought*/hoped? that the 1.3.1 release was nearing completion
so wanted to put in a minimal change.  This change is v. important to me as I can't currently/am
barely able to deploy my processes on a 32 bit machine, I *Definately* can't deploy/un-deploy
more than once due to this leak and need something quick and safe in place.   I can make your
proposed change if you really want me to, but it seems a little riskier, for no real benefit
at this point ? (other than tidy-ness/sanity))

> 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: cleanup-xsl-cache.patch, 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.

View raw message