Comment # 28 on bug 176 from
The bottom line is the initialization is not thread-safe and IMO there is no
reason for it not to be. Log messages WILL be lost at some point. A no-op
logger is just a bad idea in general.

FWIW the fix in fixSubstitutedLoggers() method isn't really thread-safe either.

The following returns a newly created list of SubstituteLoggers.
List<SubstitutableLogger> loggers = TEMP_FACTORY.getLoggers();

At the end TEMP_FACTORY.clear(); is invoked which could potentially result in a
loss of a logger that was created in SubstituteLoggerFactory while the loop is
creating the loggers on the current LoggerFactory.

I will say that fix is better than nothing though. Just ignoring the issue
isn't going to solve it :)


You are receiving this mail because: