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.