No that _is_ helpful. So you have seen this before also. The build uses Java 7 
on my box. I'll give it a try with Java 8. 

By the way, the stacktrace doesn't appear in the build -it just hangs - until I 
hit Ctl-break to dump all app threads. 


Sent from my iPhone

> On 2016/04/13, at 3:20, Gary Gregory <[email protected]> wrote:
> 
> I've not seen this exact problem before. I _have_ seen my local Windows-based 
> build hang plenty of times though in the flume tests as I've reported here 
> before. I've not seen this in a while though. Maybe it's because I'm using 
> Java 8 more consistently instead of a mix of 7 and 8. Maybe it's better since 
> Flume 1.6.0. Not sure. Not helpful either, am I? ;-)
> 
> Gary
> 
>> On Tue, Apr 12, 2016 at 8:52 AM, Remko Popma <[email protected]> wrote:
>> I usually run mvn clean package so I am not sure if this problem is because 
>> of a recent change, but when I run mvn clean install, the build hangs in 
>> FlumeAppenderTest.testIncompleteBatch.
>> 
>> From the stack trace it looks like NettyAvroRpcClient is trying to release 
>> resources and this hangs because the threadpool does not shut down.
>> 
>> This happens on master as well as on the branch I'm working on.
>> Has anyone seen this before? 
>> 
>> Thread dump of the main thread: (full thread dump attached)
>> "main" #1 prio=5 os_prio=0 tid=0x0000000002612800 nid=0x1d88 runnable 
>> [0x000000000260d000]
>>    java.lang.Thread.State: TIMED_WAITING (parking)
>>         at sun.misc.Unsafe.park(Native Method)
>>         - parking to wait for  <0x00000000eba193d0> (a 
>> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
>>         at 
>> java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
>>         at 
>> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
>>         at 
>> java.util.concurrent.ThreadPoolExecutor.awaitTermination(ThreadPoolExecutor.java:1465)
>>         at 
>> org.jboss.netty.util.internal.ExecutorUtil.terminate(ExecutorUtil.java:109)
>>         at 
>> org.jboss.netty.util.internal.ExecutorUtil.terminate(ExecutorUtil.java:49)
>>         at 
>> org.jboss.netty.channel.socket.nio.AbstractNioWorkerPool.releaseExternalResources(AbstractNioWorkerPool.java:77)
>>         at 
>> org.jboss.netty.channel.socket.nio.NioClientSocketChannelFactory.releaseExternalResources(NioClientSocketChannelFactory.java:215)
>>         at 
>> org.apache.flume.api.NettyAvroRpcClient.connect(NettyAvroRpcClient.java:179)
>>         at 
>> org.apache.flume.api.NettyAvroRpcClient.connect(NettyAvroRpcClient.java:121)
>>         at 
>> org.apache.flume.api.NettyAvroRpcClient.configure(NettyAvroRpcClient.java:638)
>>         - locked <0x00000000eba186f8> (a 
>> org.apache.flume.api.NettyAvroRpcClient)
>>         at 
>> org.apache.flume.api.RpcClientFactory.getInstance(RpcClientFactory.java:89)
>>         at 
>> org.apache.flume.api.FailoverRpcClient.getNextClient(FailoverRpcClient.java:264)
>>         at 
>> org.apache.flume.api.FailoverRpcClient.getClient(FailoverRpcClient.java:125)
>>         - locked <0x00000000eba13f18> (a 
>> org.apache.flume.api.FailoverRpcClient)
>>         at 
>> org.apache.flume.api.FailoverRpcClient.appendBatch(FailoverRpcClient.java:200)
>>         at 
>> org.apache.logging.log4j.flume.appender.FlumeAvroManager.send(FlumeAvroManager.java:160)
>>         - locked <0x00000000eba13a10> (a 
>> org.apache.logging.log4j.flume.appender.FlumeAvroManager)
>>         at 
>> org.apache.logging.log4j.flume.appender.FlumeAvroManager.send(FlumeAvroManager.java:208)
>>         - locked <0x00000000eba13a10> (a 
>> org.apache.logging.log4j.flume.appender.FlumeAvroManager)
>>         at 
>> org.apache.logging.log4j.flume.appender.FlumeAppender.append(FlumeAppender.java:105)
>>         at 
>> org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:155)
>>         at 
>> org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:128)
>>         at 
>> org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:119)
>>         at 
>> org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:84)
>>         at 
>> org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:387)
>>         at 
>> org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:372)
>>         at 
>> org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:356)
>>         at 
>> org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:346)
>>         at 
>> org.apache.logging.log4j.core.config.DefaultReliabilityStrategy.log(DefaultReliabilityStrategy.java:49)
>>         at org.apache.logging.log4j.core.Logger.logMessage(Logger.java:146)
>>         at 
>> org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:2002)
>>         at 
>> org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1974)
>>         at 
>> org.apache.logging.log4j.spi.AbstractLogger.info(AbstractLogger.java:1311)
>>         at 
>> org.apache.logging.log4j.flume.appender.FlumeAppenderTest.testIncompleteBatch(FlumeAppenderTest.java:247)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>         at 
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>>         at 
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:497)
>>         at 
>> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
>>         at 
>> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>>         at 
>> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
>>         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.runners.ParentRunner.runLeaf(ParentRunner.java:325)
>>         at 
>> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
>>         at 
>> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
>>         at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
>>         at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
>>         at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
>>         at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
>>         at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
>>         at 
>> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
>>         at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
>>         at 
>> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:367)
>>         at 
>> org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:274)
>>         at 
>> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
>>         at 
>> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:161)
>>         at 
>> org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:290)
>>         at 
>> org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:242)
>>         at 
>> org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:121)
>> 
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> For additional commands, e-mail: [email protected]
> 
> 
> 
> -- 
> E-Mail: [email protected] | [email protected] 
> Java Persistence with Hibernate, Second Edition
> JUnit in Action, Second Edition
> Spring Batch in Action
> Blog: http://garygregory.wordpress.com 
> Home: http://garygregory.com/
> Tweet! http://twitter.com/GaryGregory

Reply via email to