Skip to content

Unit test failing with "Found x zombie thread(s)" on macOS on master #923

@michael-fl

Description

@michael-fl

Describe the bug
Unit test Issue256Test.runReconnectSocketClose
fails reproducible on master branch with "Found x zombie thread(s)" on macOS.

To Reproduce
Steps to reproduce the behavior:

  1. Run all tests or test Issue256Test.runReconnectSocketClose on macOS.

Expected behavior
Unit test should succeed (there should be no zombie threads).

Debug log

WebSocketWorker-13
    at java.base@11.0.1/jdk.internal.misc.Unsafe.park(Native Method)
    at java.base@11.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
    at java.base@11.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
    at java.base@11.0.1/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
    at app//org.java_websocket.server.WebSocketServer$WebSocketWorker.run(WebSocketServer.java:994)

WebSocketWorker-14
    at java.base@11.0.1/jdk.internal.misc.Unsafe.park(Native Method)
    at java.base@11.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
    at java.base@11.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
    at java.base@11.0.1/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
    at app//org.java_websocket.server.WebSocketServer$WebSocketWorker.run(WebSocketServer.java:994)
...
ava.lang.AssertionError: Found 16 zombie thread(s) 

	at org.junit.Assert.fail(Assert.java:88)
	at org.java_websocket.util.ThreadCheck.checkZombies(ThreadCheck.java:69)
	at org.java_websocket.util.ThreadCheck.after(ThreadCheck.java:49)
	at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:50)
	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
	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.runners.ParentRunner.run(ParentRunner.java:363)
	at org.junit.runners.Suite.runChild(Suite.java:128)
	at org.junit.runners.Suite.runChild(Suite.java:27)
	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.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
	at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
	at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
	at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
	at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)

Environment(please complete the following information):

  • Version used: 1.4.x (latest master, commit d634714)
  • Java version: 11
  • Operating System and version: macOS Mojave 10.14.4

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions