Jed Wesley-Smith created LOG4J2-169: ---------------------------------------
Summary: ConfigurationFactory is not thread-safe Key: LOG4J2-169 URL: https://issues.apache.org/jira/browse/LOG4J2-169 Project: Log4j 2 Issue Type: Bug Components: Core Affects Versions: 2.0-beta4 Reporter: Jed Wesley-Smith We randomly get the following: {noformat} java.util.ConcurrentModificationException at org.apache.logging.log4j.core.config.ConfigurationFactory$Factory.getConfiguration(ConfigurationFactory.java:377) at org.apache.logging.log4j.core.config.ConfigurationFactory$Factory.getConfiguration(ConfigurationFactory.java:361) at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:266) at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:134) at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:75) at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:30) at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:165) at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:174) at … {noformat} factories is defined as: {code} private static List<ConfigurationFactory> factories = new ArrayList<ConfigurationFactory>(); {code} The simple fix is to use a java.util.concurrent.CopyOnWriteArrayList: {code} private static final List<ConfigurationFactory> factories = new CopyOnWriteArrayList<ConfigurationFactory>(); {code} https://svn.apache.org/repos/asf/logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationFactory.java -- 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 --------------------------------------------------------------------- To unsubscribe, e-mail: log4j-dev-unsubscr...@logging.apache.org For additional commands, e-mail: log4j-dev-h...@logging.apache.org