You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Dan Smith (JIRA)" <ji...@apache.org> on 2018/07/23 17:07:00 UTC
[jira] [Created] (GEODE-5465)
GMSHealthMonitorJUnitTest.testHMServiceHandlesShutdownRace hangs
occasionally
Dan Smith created GEODE-5465:
--------------------------------
Summary: GMSHealthMonitorJUnitTest.testHMServiceHandlesShutdownRace hangs occasionally
Key: GEODE-5465
URL: https://issues.apache.org/jira/browse/GEODE-5465
Project: Geode
Issue Type: Task
Reporter: Dan Smith
This test appears to have some sort of race condition that can cause it to hang. It hung in a precheckin run here:
https://concourse.apachegeode-ci.info/teams/main/pipelines/pr-develop/jobs/IntegrationTest/builds/200
I was able to reproduce the hang by running this test 100 times on my laptop. Here's the stack dump from my laptop
{noformat}
"main" #1 prio=5 os_prio=31 tid=0x00007ffb6c80c000 nid=0x2803 waiting on condition [0x000070000fff3000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x000000076c74a908> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at org.apache.geode.distributed.internal.membership.gms.fd.GMSHealthMonitorJUnitTest$TrickySocket.isClosed(GMSHealthMonitorJUnitTest.java:898)
at org.apache.geode.distributed.internal.membership.gms.fd.GMSHealthMonitor.stopServices(GMSHealthMonitor.java:978)
at org.apache.geode.distributed.internal.membership.gms.fd.GMSHealthMonitor.stop(GMSHealthMonitor.java:953)
at org.apache.geode.distributed.internal.membership.gms.fd.GMSHealthMonitorJUnitTest.testHMServiceHandlesShutdownRace(GMSHealthMonitorJUnitTest.java:199)
"Geode Failure Detection Server thread 0" #140 daemon prio=5 os_prio=31 tid=0x00007ffb6c38a800 nid=0x586f runnable [0x0000700011533000]
java.lang.Thread.State: RUNNABLE
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:409)
at java.net.ServerSocket.implAccept(ServerSocket.java:545)
at java.net.ServerSocket.accept(ServerSocket.java:513)
at org.apache.geode.distributed.internal.membership.gms.fd.GMSHealthMonitorJUnitTest$TrickySocket.accept(GMSHealthMonitorJUnitTest.java:880)
at org.apache.geode.distributed.internal.membership.gms.fd.GMSHealthMonitor.lambda$startTcpServer$2(GMSHealthMonitor.java:700)
at org.apache.geode.distributed.internal.membership.gms.fd.GMSHealthMonitor$$Lambda$5/366752671.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
{noformat}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)