[ 
https://issues.apache.org/activemq/browse/AMQ-2178?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sebastian Gutsfeld updated AMQ-2178:
------------------------------------

    Attachment: fix_command_visitor_in_connection_state_tracker.patch

The bug was found in the FUSE distribution of ActiveMQ but can also be applied 
to the official Apache distribution.

> Memory leak in ConnectionStateTracker (cannot remove connections, sessions or 
> consumers)
> ----------------------------------------------------------------------------------------
>
>                 Key: AMQ-2178
>                 URL: https://issues.apache.org/activemq/browse/AMQ-2178
>             Project: ActiveMQ
>          Issue Type: Bug
>    Affects Versions: 5.2.0
>         Environment: Debian Linux
> Processor with 2 cores
> Java 1.6.0_07-b06
> Bitronix Transaction Manager 1.3.2
>            Reporter: Sebastian Gutsfeld
>         Attachments: fix_command_visitor_in_connection_state_tracker.patch
>
>
> After inspecting the heap dump of our application we saw that the 
> ConcurrentHashMap connectionStates in 
> org.apache.activemq.state.ConnectionStateTracker in 
> org.apache.activemq.transport.failover.FailoverTransport consumes very much 
> heap space.
> The ConnectionStateTracker is an implementation of a CommandVisitor, but the 
> function to remove connections from the connectionStates ConcurrentHashMap in 
> processRemoveConnection() is never called, as it does not correspond to the 
> CommandVisitor interface. The same applies to the processRemoveConsumer() and 
> processRemoveSession() functions.
> I attached a patch to fix those bugs and remove the memory leak in 
> ConnectionStateTracker.

-- 
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