[ https://issues.apache.org/jira/browse/DRILL-5761?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16161478#comment-16161478 ]
ASF GitHub Bot commented on DRILL-5761: --------------------------------------- Github user vvysotskyi commented on a diff in the pull request: https://github.com/apache/drill/pull/930#discussion_r138100617 --- Diff: common/src/test/resources/logback-test.xml --- @@ -0,0 +1,111 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor + license agreements. See the NOTICE file distributed with this work for additional + information regarding copyright ownership. The ASF licenses this file to + You under the Apache License, Version 2.0 (the "License"); you may not use + this file except in compliance with the License. You may obtain a copy of + the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required + by applicable law or agreed to in writing, software distributed under the + License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS + OF ANY KIND, either express or implied. See the License for the specific + language governing permissions and limitations under the License. --> +<configuration> + + <if condition='property("drill.lilith.enable").equalsIgnoreCase("true")'> + <then> + <appender name="SOCKET" class="de.huxhorn.lilith.logback.appender.ClassicMultiplexSocketAppender"> + <Compressing>true</Compressing> + <ReconnectionDelay>10000</ReconnectionDelay> + <IncludeCallerData>true</IncludeCallerData> + <RemoteHosts>${LILITH_HOSTNAME:-localhost}</RemoteHosts> + </appender> + </then> + </if> + + <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> + <!-- encoders are assigned the type + ch.qos.logback.classic.encoder.PatternLayoutEncoder by default --> + <encoder> + <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern> + </encoder> + </appender> + + <!-- + <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> + <file>${log.path}</file> + <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> + <fileNamePattern>${log.path}.%i</fileNamePattern> + <minIndex>1</minIndex> + <maxIndex>10</maxIndex> + </rollingPolicy> + + <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> + <maxFileSize>100MB</maxFileSize> + </triggeringPolicy> + <encoder> + <pattern>%date{ISO8601} [%thread] %-5level %logger{36} - %msg%n</pattern> + </encoder> + </appender> + --> + + <logger name="org.apache.drill" additivity="false"> + <level value="debug"/> --- End diff -- This logger contains only Lilith appender, and since we are using Lilith only for debugging separate tests, I think it would be better to left logging level here at `DEBUG`. In this case, everyone who uses Lilith won't need to change logback file. Console appender is used in the root logger and it has `ERROR` logging level. > Disable Lilith ClassicMultiplexSocketAppender by default > -------------------------------------------------------- > > Key: DRILL-5761 > URL: https://issues.apache.org/jira/browse/DRILL-5761 > Project: Apache Drill > Issue Type: Bug > Components: Tools, Build & Test > Reporter: Volodymyr Vysotskyi > Assignee: Volodymyr Vysotskyi > Labels: ready-to-commit > Fix For: 1.12.0 > > > When running unit tests on the node where Hiveserver2 service is running, > tests run hangs in the middle. Jstack shows that some threads are waiting for > a condition. > {noformat} > Full thread dump > "main" prio=10 tid=0x00007f0998009800 nid=0x17f7 waiting on condition > [0x00007f09a0c6d000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x000000076004ebf0> (a > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043) > at > java.util.concurrent.ArrayBlockingQueue.put(ArrayBlockingQueue.java:324) > at > de.huxhorn.lilith.sender.MultiplexSendBytesService.sendBytes(MultiplexSendBytesService.java:132) > at > de.huxhorn.lilith.logback.appender.MultiplexSocketAppenderBase.sendBytes(MultiplexSocketAppenderBase.java:336) > at > de.huxhorn.lilith.logback.appender.MultiplexSocketAppenderBase.append(MultiplexSocketAppenderBase.java:348) > at > ch.qos.logback.core.UnsynchronizedAppenderBase.doAppend(UnsynchronizedAppenderBase.java:88) > at > ch.qos.logback.core.spi.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:48) > at ch.qos.logback.classic.Logger.appendLoopOnAppenders(Logger.java:272) > at ch.qos.logback.classic.Logger.callAppenders(Logger.java:259) > at > ch.qos.logback.classic.Logger.buildLoggingEventAndAppend(Logger.java:441) > at ch.qos.logback.classic.Logger.filterAndLog_0_Or3Plus(Logger.java:395) > at ch.qos.logback.classic.Logger.error(Logger.java:558) > at > org.apache.drill.test.DrillTest$TestLogReporter.failed(DrillTest.java:153) > at org.junit.rules.TestWatcher.failedQuietly(TestWatcher.java:84) > at org.junit.rules.TestWatcher.access$300(TestWatcher.java:46) > at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:62) > at > org.junit.rules.ExpectedException$ExpectedExceptionStatement.evaluate(ExpectedException.java:168) > at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55) > at org.junit.rules.RunRules.evaluate(RunRules.java:20) > at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) > at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) > at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) > at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) > at > org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) > at > org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27) > at org.junit.runners.ParentRunner.run(ParentRunner.java:309) > at org.junit.runners.Suite.runChild(Suite.java:127) > at org.junit.runners.Suite.runChild(Suite.java:26) > at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) > at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) > at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) > at org.junit.runners.ParentRunner.run(ParentRunner.java:309) > at org.junit.runner.JUnitCore.run(JUnitCore.java:160) > at org.junit.runner.JUnitCore.run(JUnitCore.java:138) > at > org.apache.maven.surefire.junitcore.JUnitCoreWrapper.createRequestAndRun(JUnitCoreWrapper.java:113) > at > org.apache.maven.surefire.junitcore.JUnitCoreWrapper.executeLazy(JUnitCoreWrapper.java:94) > at > org.apache.maven.surefire.junitcore.JUnitCoreWrapper.execute(JUnitCoreWrapper.java:58) > at > org.apache.maven.surefire.junitcore.JUnitCoreProvider.invoke(JUnitCoreProvider.java:134) > at > org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200) > at > org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153) > at > org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103) > "Thread-112" prio=10 tid=0x00007f099911c800 nid=0x1caa waiting on condition > [0x00007f09685f3000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x000000076004ebf0> (a > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043) > at > java.util.concurrent.ArrayBlockingQueue.put(ArrayBlockingQueue.java:324) > at > de.huxhorn.lilith.sender.MultiplexSendBytesService.sendBytes(MultiplexSendBytesService.java:132) > at > de.huxhorn.lilith.logback.appender.MultiplexSocketAppenderBase.sendBytes(MultiplexSocketAppenderBase.java:336) > at > de.huxhorn.lilith.logback.appender.MultiplexSocketAppenderBase.append(MultiplexSocketAppenderBase.java:348) > at > ch.qos.logback.core.UnsynchronizedAppenderBase.doAppend(UnsynchronizedAppenderBase.java:88) > at > ch.qos.logback.core.spi.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:48) > at ch.qos.logback.classic.Logger.appendLoopOnAppenders(Logger.java:272) > at ch.qos.logback.classic.Logger.callAppenders(Logger.java:259) > at > ch.qos.logback.classic.Logger.buildLoggingEventAndAppend(Logger.java:441) > at ch.qos.logback.classic.Logger.filterAndLog_1(Logger.java:413) > at ch.qos.logback.classic.Logger.debug(Logger.java:506) > at > org.apache.drill.common.scanner.ClassPathScanner.forResource(ClassPathScanner.java:345) > at > org.apache.drill.exec.store.StoragePluginRegistryImpl.createPlugins(StoragePluginRegistryImpl.java:141) > at > org.apache.drill.exec.store.StoragePluginRegistryImpl.init(StoragePluginRegistryImpl.java:128) > at org.apache.drill.exec.server.Drillbit.run(Drillbit.java:135) > at > org.apache.drill.exec.fn.impl.TestDateFunctions.testCommon(TestDateFunctions.java:52) > at > org.apache.drill.exec.fn.impl.TestDateFunctions.testAge(TestDateFunctions.java:114) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:606) > at > org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) > at > org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) > at > org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) > at > mockit.integration.junit4.internal.JUnit4TestRunnerDecorator.executeTestMethod(JUnit4TestRunnerDecorator.java:120) > at > mockit.integration.junit4.internal.JUnit4TestRunnerDecorator.invokeExplosively(JUnit4TestRunnerDecorator.java:65) > at > mockit.integration.junit4.internal.MockFrameworkMethod.invokeExplosively(MockFrameworkMethod.java:29) > at sun.reflect.GeneratedMethodAccessor29.invoke(Unknown Source) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:606) > at > mockit.internal.util.MethodReflection.invokeWithCheckedThrows(MethodReflection.java:95) > at > mockit.internal.annotations.MockMethodBridge.callMock(MockMethodBridge.java:76) > at > mockit.internal.annotations.MockMethodBridge.invoke(MockMethodBridge.java:41) > at > org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java) > at > org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) > at > org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) > at > org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27) > at > org.junit.internal.runners.statements.FailOnTimeout$StatementThread.run(FailOnTimeout.java:74) > "BitServer-1" daemon prio=10 tid=0x00007f099013a800 nid=0x1cac runnable > [0x00007f0968af9000] > java.lang.Thread.State: RUNNABLE > at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) > at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269) > at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:79) > at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87) > - locked <0x0000000722f6ee68> (a > io.netty.channel.nio.SelectedSelectionKeySet) > - locked <0x0000000722f5ec40> (a java.util.Collections$UnmodifiableSet) > - locked <0x0000000722f5eb28> (a sun.nio.ch.EPollSelectorImpl) > at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98) > at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:622) > at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:310) > at > io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111) > at java.lang.Thread.run(Thread.java:745) > "UserServer-1" daemon prio=10 tid=0x00007f0990214000 nid=0x1cab runnable > [0x00007f0972808000] > java.lang.Thread.State: RUNNABLE > at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) > at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269) > at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:79) > at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87) > - locked <0x00000007233e62e8> (a > io.netty.channel.nio.SelectedSelectionKeySet) > - locked <0x00000007233d60c0> (a java.util.Collections$UnmodifiableSet) > - locked <0x00000007233d5fa8> (a sun.nio.ch.EPollSelectorImpl) > at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98) > at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:622) > at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:310) > at > io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111) > at java.lang.Thread.run(Thread.java:745) > "SendBytes@SocketDataOutputStreamFactory[hostName=localhost, port=10000, > connectionTimeout=10000, writeTimeout=5000]" daemon prio=10 > tid=0x00007f0998c3d000 nid=0x1857 runnable [0x00007f0980117000] > java.lang.Thread.State: RUNNABLE > at java.net.SocketOutputStream.socketWrite0(Native Method) > at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:113) > at java.net.SocketOutputStream.write(SocketOutputStream.java:159) > at > java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82) > at java.io.BufferedOutputStream.write(BufferedOutputStream.java:126) > - locked <0x000000076009f220> (a java.io.BufferedOutputStream) > at > de.huxhorn.sulky.io.TimeoutOutputStream.write(TimeoutOutputStream.java:109) > at java.io.DataOutputStream.write(DataOutputStream.java:107) > - locked <0x0000000760000960> (a java.io.DataOutputStream) > at java.io.FilterOutputStream.write(FilterOutputStream.java:97) > at > de.huxhorn.lilith.sender.MessageWriteByteStrategy.writeBytes(MessageWriteByteStrategy.java:56) > at > de.huxhorn.lilith.sender.SimpleSendBytesService$SendBytesThread.run(SimpleSendBytesService.java:243) > "SOCKET Heartbeat" daemon prio=10 tid=0x00007f0998c3f000 nid=0x185e waiting > on condition [0x00007f0973efd000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x000000076004ebf0> (a > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043) > at > java.util.concurrent.ArrayBlockingQueue.put(ArrayBlockingQueue.java:324) > at > de.huxhorn.lilith.sender.MultiplexSendBytesService.sendBytes(MultiplexSendBytesService.java:132) > at > de.huxhorn.lilith.sender.HeartbeatRunnable.run(HeartbeatRunnable.java:68) > at java.lang.Thread.run(Thread.java:745) > "SOCKET Dispatcher" daemon prio=10 tid=0x00007f0998c3d800 nid=0x185c waiting > on condition [0x00007f0973ffe000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x00000007600c00b8> (a > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043) > at > java.util.concurrent.ArrayBlockingQueue.put(ArrayBlockingQueue.java:324) > at > de.huxhorn.lilith.sender.SimpleSendBytesService.sendBytes(SimpleSendBytesService.java:131) > at > de.huxhorn.lilith.sender.MultiplexSendBytesService$DispatcherRunnable.run(MultiplexSendBytesService.java:152) > at java.lang.Thread.run(Thread.java:745) > "TimeoutOutputStream Watchdog-Thread" daemon prio=10 tid=0x00007f098c00b000 > nid=0x1863 waiting for monitor entry [0x00007f0973cfb000] > java.lang.Thread.State: BLOCKED (on object monitor) > at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140) > - waiting to lock <0x000000076009f220> (a java.io.BufferedOutputStream) > at java.io.FilterOutputStream.close(FilterOutputStream.java:157) > at > de.huxhorn.sulky.io.TimeoutOutputStream.internalClose(TimeoutOutputStream.java:185) > at > de.huxhorn.sulky.io.TimeoutOutputStream.access$500(TimeoutOutputStream.java:42) > at > de.huxhorn.sulky.io.TimeoutOutputStream$TimeoutRunnable.run(TimeoutOutputStream.java:226) > at java.lang.Thread.run(Thread.java:745) > "Reconnection@SocketDataOutputStreamFactory[hostName=localhost, port=10000, > connectionTimeout=10000, writeTimeout=5000]" daemon prio=10 > tid=0x00007f0978218000 nid=0x1861 in Object.wait() [0x00007f0973dfc000] > java.lang.Thread.State: TIMED_WAITING (on object monitor) > at java.lang.Object.wait(Native Method) > - waiting on <0x0000000760000950> (a java.lang.Object) > at > de.huxhorn.lilith.sender.SimpleSendBytesService$SendBytesThread$ReconnectionThread.run(SimpleSendBytesService.java:350) > - locked <0x0000000760000950> (a java.lang.Object) > "WorkManager.StatusThread" prio=10 tid=0x00007f099013b000 nid=0x1cad waiting > on condition [0x00007f0968bfa000] > java.lang.Thread.State: TIMED_WAITING (sleeping) > at java.lang.Thread.sleep(Native Method) > at > org.apache.drill.exec.work.WorkManager$StatusThread.run(WorkManager.java:328) > "scan-8" daemon prio=10 tid=0x00007f098c36a800 nid=0x19bd waiting on > condition [0x00007f0967c9b000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x0000000765b6e5b0> (a > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043) > at > java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442) > at > java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > "scan-7" daemon prio=10 tid=0x00007f098806f000 nid=0x19bb waiting on > condition [0x00007f0967d9c000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x0000000765b6e5b0> (a > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043) > at > java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442) > at > java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > "scan-6" daemon prio=10 tid=0x00007f09744fd000 nid=0x199c waiting on > condition [0x00007f0967e9d000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x0000000765b6e5b0> (a > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043) > at > java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442) > at > java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > "scan-5" daemon prio=10 tid=0x00007f099035c800 nid=0x199a waiting on > condition [0x00007f0967f9e000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x0000000765b6e5b0> (a > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043) > at > java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442) > at > java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > "scan-4" daemon prio=10 tid=0x00007f096c099800 nid=0x1982 waiting on > condition [0x00007f096809f000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x0000000765b6e5b0> (a > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043) > at > java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442) > at > java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > "scan-3" daemon prio=10 tid=0x00007f098806e000 nid=0x1981 waiting on > condition [0x00007f09681a0000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x0000000765b6e5b0> (a > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043) > at > java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442) > at > java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > "scan-2" daemon prio=10 tid=0x00007f0974e91000 nid=0x1980 waiting on > condition [0x00007f09684f3000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x0000000765b6e5b0> (a > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043) > at > java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442) > at > java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > "scan-1" daemon prio=10 tid=0x00007f099003c000 nid=0x197f waiting on > condition [0x00007f09687f6000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x0000000765b6e5b0> (a > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043) > at > java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442) > at > java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > "threadDeathWatcher-1-2" daemon prio=10 tid=0x00007f097419f000 nid=0x192f > waiting on condition [0x00007f09689f8000] > java.lang.Thread.State: TIMED_WAITING (sleeping) > at java.lang.Thread.sleep(Native Method) > at > io.netty.util.ThreadDeathWatcher$Watcher.run(ThreadDeathWatcher.java:137) > at > io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:137) > at java.lang.Thread.run(Thread.java:745) > "Finalizer" daemon prio=10 tid=0x00007f0998099000 nid=0x1801 in Object.wait() > [0x00007f099cccb000] > java.lang.Thread.State: WAITING (on object monitor) > at java.lang.Object.wait(Native Method) > - waiting on <0x0000000760000df0> (a java.lang.ref.ReferenceQueue$Lock) > at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135) > - locked <0x0000000760000df0> (a java.lang.ref.ReferenceQueue$Lock) > at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151) > at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209) > "Reference Handler" daemon prio=10 tid=0x00007f0998097000 nid=0x17fe in > Object.wait() [0x00007f099cdcc000] > java.lang.Thread.State: WAITING (on object monitor) > at java.lang.Object.wait(Native Method) > - waiting on <0x0000000760000e98> (a java.lang.ref.Reference$Lock) > at java.lang.Object.wait(Object.java:503) > at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:133) > - locked <0x0000000760000e98> (a java.lang.ref.Reference$Lock) > "Attach Listener" daemon prio=10 tid=0x00007f097c001000 nid=0x181f waiting on > condition [0x0000000000000000] > java.lang.Thread.State: RUNNABLE > "Service Thread" daemon prio=10 tid=0x00007f09980cf000 nid=0x180c runnable > [0x0000000000000000] > java.lang.Thread.State: RUNNABLE > "C2 CompilerThread1" daemon prio=10 tid=0x00007f09980cc800 nid=0x180a waiting > on condition [0x0000000000000000] > java.lang.Thread.State: RUNNABLE > "C2 CompilerThread0" daemon prio=10 tid=0x00007f09980ca000 nid=0x1807 waiting > on condition [0x0000000000000000] > java.lang.Thread.State: RUNNABLE > "Signal Dispatcher" daemon prio=10 tid=0x00007f09980c8000 nid=0x1804 runnable > [0x0000000000000000] > java.lang.Thread.State: RUNNABLE > "VM Thread" prio=10 tid=0x00007f0998092800 nid=0x17fa runnable > "VM Periodic Task Thread" prio=10 tid=0x00007f09980da000 nid=0x180d waiting > on condition > JNI global references: 446 > {noformat} > *Problem description* > Lilith and Hiveserver2 use the same port 10000. > Port in Lilith UI cannot be changed > (https://github.com/huxi/lilith/issues/10). > So we should disable Lilith ClassicMultiplexSocketAppender by default to > avoid this issue. > *How to enable Lilith* > To enable Lilith test should be run with property > *-Ddrill.lilith.enable=true* (or another logging level). > For Maven this option should be specified using option > *-Dmaven.surefire.debug* > *Example* > mvn -Dmaven.surefire.debug="-Ddrill.lilith.enable=true" test > -Dtest=TestAggregateFunctions -- This message was sent by Atlassian JIRA (v6.4.14#64029)