[ https://issues.apache.org/jira/browse/ODE-1020?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14173415#comment-14173415 ]
Sathwik Bantwal Premakumar commented on ODE-1020: ------------------------------------------------- Thanks to Tammo, for bringing up the JIRA ODE-568 for underetanding the problem. Undeploy and Deploy process operations converge at unregisterProcess(QName process) in BpelEngineImpl. During Deploy opeartion currently Active process is Retired, before it enters the unregisterProcess call. So an Active Process check in deactivate() in BPELProcess will never deactivate the process services for Retired processes. Hence this check has to be removed in deactivate(), which will solve the memory leak reported in this JIRA. Now to counter the problem in ODE-568, we check if there is any Active process whose Process ID (pid) is not same as the one which is being unregistered, then we disallow accidental deactivation of process services which is required for Active process. This would solve the problem reported in both the Jira. Let us know your comments and any missing scenarios. > Deployment memory leak > ---------------------- > > Key: ODE-1020 > URL: https://issues.apache.org/jira/browse/ODE-1020 > Project: ODE > Issue Type: Bug > Components: Deployment > Affects Versions: 1.3.6 > Reporter: Igor Vorobiov > Assignee: Sathwik Bantwal Premakumar > Fix For: 1.3.7, 1.4 > > Attachments: DeploymentService-soapui-project.xml, ODE-1020.patch, > heap_dump.png, memLeak2.png, memLeak3.png > > > There is deployment memory leak when we redeploy process(e.g. DynPartner from > ode examples). > To reproduce need to do redeployment of the process: > 1. deploy DynPartner-1 > 2. deploy DynPartner-2 > 3. deploy DynPartner-3 ... > 4. run GC in JProfiler. > In JProfiler we can see that after each redeployment memory is allocated but > after running GC it is not released. > From attached heap dump we can see that most of the memory is allocated for > org.apache.ode.store.DeploymentUnitDir._docRegistry where wsdl is parsed. > Even after undeploy memory is not released. > The problem became critical when we deployed 250 different processes where > each process has 3-4 wsdl files. All these processes consumed about 700mb > memory. -- This message was sent by Atlassian JIRA (v6.3.4#6332)