MessageExchangeDAOs of in-memory processes are kept in memory despite release()
-------------------------------------------------------------------------------

                 Key: ODE-395
                 URL: https://issues.apache.org/jira/browse/ODE-395
             Project: ODE
          Issue Type: Bug
          Components: BPEL Runtime
    Affects Versions: 1.3
            Reporter: Jürgen Schumacher


We have experienced a high memory consumption by ODE in scenarios where 
in-memory processes are invoked with a relatively high frequency. This is 
caused by the org.apache.ode.bpel.memdao.BpelDAOConnectionImpl which keeps the 
created instances of MessageExchangeDAOImpl in memory until they exceed the 
TIME_TO_LIVE (hardcoded constant). This way we have around 400 of these 
unneeded (at least for us ;-) objects hanging in memory occupying around 30 MB 
of memory all the time.

I've created a patch that removes the MessageExchangeDAO objects from the 
in-memory BpelDAOConnection as soon as the invoker of the process calls 
release() on its MyRoleMessageExchange object. It's probably too simplistic, 
but in my test cases it works without a problem.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to