[ https://issues.apache.org/jira/browse/GEODE-5465?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ASF GitHub Bot updated GEODE-5465: ---------------------------------- Labels: pull-request-available swat (was: swat) > GMSHealthMonitorJUnitTest.testHMServiceHandlesShutdownRace hangs occasionally > ----------------------------------------------------------------------------- > > Key: GEODE-5465 > URL: https://issues.apache.org/jira/browse/GEODE-5465 > Project: Geode > Issue Type: Task > Reporter: Dan Smith > Assignee: Brian Rowe > Priority: Major > Labels: pull-request-available, swat > > 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)