MDC seems to work inproperly with AsyncAppender.

I have a custom appender that reads some entries from the MDC, and writes
them to a database. If I use it with the AsyncAppender, the MDC information
is sometimes wrong.

The problems seems to be that LoggingEvent.getMDCCopy() doesn't actully
create a copy of the hashtable, but just gets a reference to it.

If you modify LoggingEvent.getMDCCopy like this...

203c203
<         mdcCopy = (Hashtable)MDC.getContext().clone();
---
>         mdcCopy = MDC.getContext();

... it starts working.

- Heikki 

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to