You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Prasanth Jayachandran (JIRA)" <ji...@apache.org> on 2018/01/05 19:03:00 UTC

[jira] [Created] (HIVE-18384) ConcurrentModificationException in log4j2.x library

Prasanth Jayachandran created HIVE-18384:
--------------------------------------------

             Summary: ConcurrentModificationException in log4j2.x library
                 Key: HIVE-18384
                 URL: https://issues.apache.org/jira/browse/HIVE-18384
             Project: Hive
          Issue Type: Bug
          Components: Logging
    Affects Versions: 3.0.0
            Reporter: Prasanth Jayachandran
            Assignee: Prasanth Jayachandran


In one of the internal testing, observed the following exception
{code}
java.util.ConcurrentModificationException
	at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:909) ~[?:1.8.0_152]
	at java.util.ArrayList$Itr.next(ArrayList.java:859) ~[?:1.8.0_152]
	at java.util.Collections$UnmodifiableCollection$1.next(Collections.java:1042) ~[?:1.8.0_152]
	at org.apache.logging.log4j.message.ParameterFormatter.appendCollection(ParameterFormatter.java:596) ~[log4j-api-2.6.2.jar:2.6.2]
	at org.apache.logging.log4j.message.ParameterFormatter.appendPotentiallyRecursiveValue(ParameterFormatter.java:504) ~[log4j-api-2.6.2.jar:2.6.2]
	at org.apache.logging.log4j.message.ParameterFormatter.recursiveDeepToString(ParameterFormatter.java:429) ~[log4j-api-2.6.2.jar:2.6.2]
	at org.apache.logging.log4j.message.ParameterFormatter.formatMessage2(ParameterFormatter.java:189) ~[log4j-api-2.6.2.jar:2.6.2]
	at org.apache.logging.log4j.message.ParameterizedMessage.formatTo(ParameterizedMessage.java:224) ~[log4j-api-2.6.2.jar:2.6.2]
	at org.apache.logging.log4j.message.ParameterizedMessage.getFormattedMessage(ParameterizedMessage.java:200) ~[log4j-api-2.6.2.jar:2.6.2]
	at org.apache.logging.log4j.core.async.RingBufferLogEvent.setMessage(RingBufferLogEvent.java:126) ~[log4j-core-2.6.2.jar:2.6.2]
	at org.apache.logging.log4j.core.async.RingBufferLogEvent.setValues(RingBufferLogEvent.java:104) ~[log4j-core-2.6.2.jar:2.6.2]
	at org.apache.logging.log4j.core.async.RingBufferLogEventTranslator.translateTo(RingBufferLogEventTranslator.java:56) ~[log4j-core-2.6.2.jar:2.6.2]
	at org.apache.logging.log4j.core.async.RingBufferLogEventTranslator.translateTo(RingBufferLogEventTranslator.java:34) ~[log4j-core-2.6.2.jar:2.6.2]
	at com.lmax.disruptor.RingBuffer.translateAndPublish(RingBuffer.java:930) ~[disruptor-3.3.0.jar:?]
	at com.lmax.disruptor.RingBuffer.tryPublishEvent(RingBuffer.java:456) ~[disruptor-3.3.0.jar:?]
	at org.apache.logging.log4j.core.async.AsyncLoggerDisruptor.tryPublish(AsyncLoggerDisruptor.java:190) ~[log4j-core-2.6.2.jar:2.6.2]
	at org.apache.logging.log4j.core.async.AsyncLogger.publish(AsyncLogger.java:160) ~[log4j-core-2.6.2.jar:2.6.2]
	at org.apache.logging.log4j.core.async.AsyncLogger.logWithThreadLocalTranslator(AsyncLogger.java:156) ~[log4j-core-2.6.2.jar:2.6.2]
	at org.apache.logging.log4j.core.async.AsyncLogger.logMessage(AsyncLogger.java:126) ~[log4j-core-2.6.2.jar:2.6.2]
	at org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:2011) ~[log4j-api-2.6.2.jar:2.6.2]
	at org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1884) ~[log4j-api-2.6.2.jar:2.6.2]
	at org.apache.logging.slf4j.Log4jLogger.info(Log4jLogger.java:189) ~[log4j-slf4j-impl-2.6.2.jar:2.6.2]
	at org.apache.hadoop.hive.druid.security.KerberosHttpClient.inner_go(KerberosHttpClient.java:96) ~[hive-druid-handler-2.1.0.2.6.4.0-91.jar:2.1.0.2.6.4.0-91]
	at org.apache.hadoop.hive.druid.security.KerberosHttpClient.access$100(KerberosHttpClient.java:50) ~[hive-druid-handler-2.1.0.2.6.4.0-91.jar:2.1.0.2.6.4.0-91]
	at org.apache.hadoop.hive.druid.security.KerberosHttpClient$2.onSuccess(KerberosHttpClient.java:144) ~[hive-druid-handler-2.1.0.2.6.4.0-91.jar:2.1.0.2.6.4.0-91]
	at org.apache.hadoop.hive.druid.security.KerberosHttpClient$2.onSuccess(KerberosHttpClient.java:134) ~[hive-druid-handler-2.1.0.2.6.4.0-91.jar:2.1.0.2.6.4.0-91]
	at org.apache.hive.druid.com.google.common.util.concurrent.Futures$4.run(Futures.java:1181) ~[hive-druid-handler-2.1.0.2.6.4.0-91.jar:2.1.0.2.6.4.0-91]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:1.8.0_152]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:1.8.0_152]
	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_152]
{code}

The fix for this went into 2.9.1 LOG4J2-1988 onwards. Updating log4j to latest version should have a fix for this issue. 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)