[logback-dev] About LBCORE-224...

Holger Hoffstaette holger.hoffstaette at googlemail.com
Fri Sep 30 18:27:19 CEST 2011

On Fri, 30 Sep 2011 17:59:56 +0200, Ceki Gülcü wrote:

> Yes, but I did not understand the point you were trying to make.
> You wrote:
> "If you google for the exception practically all occurrences show _buggy
> application code_ as the cause, "
> indeed, but then you write:
> "which explains why this happens only with Zookeeper (no kidding)."

The point being that ZK has "issues" with its own Thread management.

> "The simplest explanation can be found here:
> http://jira.porticoproject.org/browse/PORT-168"
> In PORT-168 Tim Pokorny talks about "unlocking the readlock when [he]
> should have locking", that is not the situation we are in. Perhaps you are
> saying that there is a problem in AppenderAttachableImpl?

What I was trying to say is that the bug is much more likely in ZK and one
of its racy/buggy codepaths that merely exposes this symptom. They
originally hardcoded everything against log4j and therefore probably just
didn't see this happen, maybe because log4j is oversynchronized
everywhere and thus hiding the root cause.

I also looked through 0.9.30's AppenderAttachableImpl and it looks fine.
Using a COWList is still probably better anyway since it reduces code and
makes the most common paths simpler, so that's good.

However what it also does is again hide the buggy ZK behaviour, but that
is hardly a logback bug. :)


More information about the logback-dev mailing list