[ 
https://issues.apache.org/jira/browse/AMQ-4008?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13445779#comment-13445779
 ] 

Claus Ibsen commented on AMQ-4008:
----------------------------------

After digging for a while, its due to MDC being inherited by child threads, eg 
Log4j code
{code}
ThreadLocalMap extends InheritableThreadLocal
{code}

We don't have a way to control this, the issue is JMX that does all kind of 
crap causing MDC leaks, as we cannot tell the **** to not inheirt, or to clear 
the MDC when threads is terminated.
                
> Tomcat WARN on shutdown about ThreadLocal not cleared from log4j
> ----------------------------------------------------------------
>
>                 Key: AMQ-4008
>                 URL: https://issues.apache.org/jira/browse/AMQ-4008
>             Project: ActiveMQ
>          Issue Type: Improvement
>          Components: Broker
>    Affects Versions: 5.6.0
>            Reporter: Claus Ibsen
>            Assignee: Claus Ibsen
>            Priority: Minor
>             Fix For: 5.7.0
>
>
> SEVERE: The web application [/camel-example-activemq-tomcat] created a 
> ThreadLocal with key of type [org.apache.log4j.helpers.ThreadLocalMap] (value 
> [org.apache.log4j.helpers.ThreadLocalMap@1eb0cd0]) and a value of type 
> [java.util.Hashtable] (value [{activemq.broker=myBroker}]) but failed to 
> remove it when the web application was stopped. Threads are going to be 
> renewed over time to try and avoid a probable memory leak.
> I got a bit annoyed by this when I was working on a new example for Apache 
> Camel with an embedded AMQ broker. So I am digging into fixing this. Its in 
> the start() method.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to