This is an automated email from the ASF dual-hosted git repository. ckozak pushed a commit to branch release-2.x in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git
commit 932d35c94e40b7fd8c36130ab8e3c2c4c93e3e22 Author: Turbanov Andrey <[email protected]> AuthorDate: Tue Dec 24 01:11:34 2019 +0300 LOG4J2-2415 - Lock contention in classloader because of missing org.slf4j.ext.EventData (#324) --- .../src/main/java/org/apache/logging/slf4j/Log4jLogger.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/log4j-slf4j-impl/src/main/java/org/apache/logging/slf4j/Log4jLogger.java b/log4j-slf4j-impl/src/main/java/org/apache/logging/slf4j/Log4jLogger.java index ec4decb..1fa8080 100644 --- a/log4j-slf4j-impl/src/main/java/org/apache/logging/slf4j/Log4jLogger.java +++ b/log4j-slf4j-impl/src/main/java/org/apache/logging/slf4j/Log4jLogger.java @@ -42,16 +42,16 @@ public class Log4jLogger implements LocationAwareLogger, Serializable { private static final long serialVersionUID = 7869000638091304316L; private static final Marker EVENT_MARKER = MarkerFactory.getMarker("EVENT"); + private static final EventDataConverter CONVERTER = createConverter(); + private final boolean eventLogger; private transient ExtendedLogger logger; private final String name; - private transient EventDataConverter converter; public Log4jLogger(final ExtendedLogger logger, final String name) { this.logger = logger; this.eventLogger = "EventLogger".equals(name); this.name = name; - this.converter = createConverter(); } @Override @@ -363,8 +363,8 @@ public class Log4jLogger implements LocationAwareLogger, Serializable { return; } final Message msg; - if (eventLogger && marker != null && marker.contains(EVENT_MARKER) && converter != null) { - msg = converter.convertEvent(message, params, throwable); + if (CONVERTER != null && eventLogger && marker != null && marker.contains(EVENT_MARKER)) { + msg = CONVERTER.convertEvent(message, params, throwable); } else if (params == null) { msg = new SimpleMessage(message); } else { @@ -400,7 +400,6 @@ public class Log4jLogger implements LocationAwareLogger, Serializable { // always perform the default de-serialization first aInputStream.defaultReadObject(); logger = LogManager.getContext().getLogger(name); - converter = createConverter(); } /**
