[
https://issues.apache.org/activemq/browse/CAMEL-1738?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52550#action_52550
]
Claus Ibsen commented on CAMEL-1738:
------------------------------------
Its kinda like the issue with seda component as well.
We should have a new method on Endpoint to compute a *key* for the JMX bean to
use.
{{getEndpointKey()}}
Then all your http endpoints can share the same JMX bean.
But each endpoint is registered individually in the endpoint cache as they are
different as they have a different id parameter.
Thanks for the unit test. It uses about 50mb more memory with or without the
patch on my laptop.
> Memory leak if using JMX and recipientList
> ------------------------------------------
>
> Key: CAMEL-1738
> URL: https://issues.apache.org/activemq/browse/CAMEL-1738
> Project: Apache Camel
> Issue Type: Bug
> Components: camel-core, jmx
> Affects Versions: 1.6.0
> Environment: WinXP, Java 1.6
> Reporter: Andres
> Assignee: Claus Ibsen
> Priority: Minor
> Fix For: 2.0.0
>
> Attachments: JConsole.jpg, MemLeak.java
>
>
> There seems to be a memory leak if you are using recipientList and JMX
> enabled. The problem is that endpoint MBean name computed by using hashCode,
> if there is lot of different endpoints (created on runtime) every new
> endpoint will create a new MBean instance.
> Also in recipientList every entry will create new endpoint.
> In example if we have 3 urls ;
> http://host/index?id=1
> http://host/index?id=2
> http://host/index?id=3
> Camel will add 3 different MBeans entry to JMX. As url parameters are
> normally unique then camel will end up with creating thousands of endpoint
> entries. But every MBean takes memory.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.