You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by "Andres (JIRA)" <ji...@apache.org> on 2009/06/29 17:38:07 UTC

[jira] Issue Comment Edited: (CAMEL-1771) ProducerCache should be limited to not eat memory (was: recipientList leaks memory)

    [ https://issues.apache.org/activemq/browse/CAMEL-1771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52556#action_52556 ] 

Andres edited comment on CAMEL-1771 at 6/29/09 8:36 AM:
--------------------------------------------------------

much better now however there is still some leak. I'm not 100% sure but seemst that DefaultCamelContext.addEndpoint adds unique endpoints to the endpoints hashmap ( like in ProducerCache )

Only thing I will see is that there is lot of Hasmap entrys containing HttpEndpoints  and the count of HttpEndpoints  growing and  this hasmap is inside SpringCamelContext ( DefaultCamelContext ). If it helps I will provide memory snapshot in yourkit format

      was (Author: andres):
    much better now however there is still some leak. I'm not 100% sure but seemst that DefaultCamelContext.getEndpoints adds unique endpoints to the endpoints hashmap ( like in ProducerCache )

Only thing I will see is that there is lot of Hasmap entrys containing HttpEndpoints  and the count of HttpEndpoints  growing and  this hasmap is inside SpringCamelContext ( DefaultCamelContext ). If it helps I will provide memory snapshot in yourkit format
  
> ProducerCache should be limited to not eat memory (was: recipientList leaks memory)
> -----------------------------------------------------------------------------------
>
>                 Key: CAMEL-1771
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1771
>             Project: Apache Camel
>          Issue Type: Bug
>    Affects Versions: 1.4.0, 1.5.0, 1.6.0, 1.6.1, 2.0-M2
>            Reporter: Andres
>            Assignee: Claus Ibsen
>            Priority: Critical
>             Fix For: 1.6.2, 2.0.0
>
>
> I found that RecipientList leaks memory .
> The problem is that RecipientList stores endpoints in producerCache and cache key computed by using getEndpointUri. If endpoint uris are unique ( as we have ) then every new entry will stored in cache and will never released.
> In example we are using recipientList  to send messages to the external http server, every url contains unique query parameters therefor every recipientList entry will create new producer ant that producer will stored in producerCache.
> In our system recipientList wlil leak about 20M per day
> Unfortunately I was unable to find any workaround 

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