suztomo edited a comment on pull request #14474: URL: https://github.com/apache/beam/pull/14474#issuecomment-817233402
Another case https://ci-beam.apache.org/job/beam_PreCommit_Java_Phrase/3411/console https://gist.github.com/suztomo/ffe95ebd130b13a35835a328866e948e ``` 21:27:18 "pool-123-thread-2" #177 prio=5 os_prio=0 tid=0x00007fa81d03c000 nid=0x56ca waiting on condition [0x00007fa7920e1000] 21:27:18 java.lang.Thread.State: WAITING (parking) 21:27:18 at sun.misc.Unsafe.park(Native Method) 21:27:18 - parking to wait for <0x00000000e59a4950> (a java.util.concurrent.CountDownLatch$Sync) 21:27:18 at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175) 21:27:18 at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836) 21:27:18 at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:997) 21:27:18 at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1304) 21:27:18 at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:231) 21:27:18 at org.apache.beam.runners.fnexecution.logging.GrpcLoggingServiceTest.lambda$testMultipleClientsFailingIsHandledGracefullyByServer$2(GrpcLoggingServiceTest.java:122) 21:27:18 at org.apache.beam.runners.fnexecution.logging.GrpcLoggingServiceTest$$Lambda$425/725871145.call(Unknown Source) 21:27:18 at java.util.concurrent.FutureTask.run(FutureTask.java:266) 21:27:18 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 21:27:18 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 21:27:18 at java.lang.Thread.run(Thread.java:748) 21:27:18 21:27:18 "pool-123-thread-1" #176 prio=5 os_prio=0 tid=0x00007fa81d03b000 nid=0x56c9 waiting on condition [0x00007fa840590000] 21:27:18 java.lang.Thread.State: WAITING (parking) 21:27:18 at sun.misc.Unsafe.park(Native Method) 21:27:18 - parking to wait for <0x00000000e574c180> (a java.util.concurrent.CountDownLatch$Sync) 21:27:18 at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175) 21:27:18 at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836) 21:27:18 at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:997) 21:27:18 at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1304) 21:27:18 at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:231) 21:27:18 at org.apache.beam.runners.fnexecution.logging.GrpcLoggingServiceTest.lambda$testMultipleClientsFailingIsHandledGracefullyByServer$2(GrpcLoggingServiceTest.java:122) 21:27:18 at org.apache.beam.runners.fnexecution.logging.GrpcLoggingServiceTest$$Lambda$425/725871145.call(Unknown Source) 21:27:18 at java.util.concurrent.FutureTask.run(FutureTask.java:266) 21:27:18 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 21:27:18 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 21:27:18 at java.lang.Thread.run(Thread.java:748) 21:27:18 ... 21:27:18 "Test worker" #20 prio=5 os_prio=0 tid=0x00007fa8c0cc6000 nid=0x51f3 waiting on condition [0x00007fa874b6b000] 21:27:18 java.lang.Thread.State: WAITING (parking) 21:27:18 at sun.misc.Unsafe.park(Native Method) 21:27:18 - parking to wait for <0x00000000e4d8c9b0> (a java.util.concurrent.FutureTask) 21:27:18 at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175) 21:27:18 at java.util.concurrent.FutureTask.awaitDone(FutureTask.java:429) 21:27:18 at java.util.concurrent.FutureTask.get(FutureTask.java:191) 21:27:18 at java.util.concurrent.AbstractExecutorService.invokeAll(AbstractExecutorService.java:244) 21:27:18 at org.apache.beam.runners.fnexecution.logging.GrpcLoggingServiceTest.testMultipleClientsFailingIsHandledGracefullyByServer(GrpcLoggingServiceTest.java:127) 21:27:18 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ``` It's definitely **GrpcLoggingServiceTest**, that causes the issue. Todo: - Read what GrpcLoggingServiceTest does, in terms of Java threads. - What is it waiting for? - In the thead dump outputs, is there any thread that should be there? - How is GrpcLoggingServiceTest related to gRPC or Netty? - Ask gRPC team for help or any similar problem # What GrpcLoggingServiceTest does It creates 3 tasks and waits for them to finish at `GrpcLoggingServiceTest.java:127`. The thread dump shows that 2 of 3 threads wait for something to complete at `GrpcLoggingServiceTest.java:122`. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected]
