]
Jean-Francois Denise reassigned WFCORE-203:
-------------------------------------------
Assignee: Jean-Francois Denise (was: Alexey Loubyansky)
CLI instance hanging around after test suite run
------------------------------------------------
Key: WFCORE-203
URL:
https://issues.jboss.org/browse/WFCORE-203
Project: WildFly Core
Issue Type: Bug
Components: CLI
Reporter: Stuart Douglas
Assignee: Jean-Francois Denise
After a test suite run I see a CLI instance that has locked up. The issue is that
remoting is not shutting down cleanly for some reason, which causes the shutdown hook
thread to block.
Even though the remoting threads are deamon threads, the shutdown thread is not, so it is
actually the shutdown thread the is preventing the JVM from terminating.
Relevant stack traces are:
{noformat}
"Remoting "cli-client" I/O-1" daemon prio=5 tid=0x00007feefb966000
nid=0x5903 waiting on condition [0x0000000120d7d000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000007acd20818> (a
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082)
at java.util.concurrent.ArrayBlockingQueue.poll(ArrayBlockingQueue.java:389)
at
org.jboss.aesh.console.reader.ConsoleInputSession$1.read(ConsoleInputSession.java:39)
at org.jboss.aesh.terminal.POSIXTerminal.read(POSIXTerminal.java:95)
at org.jboss.aesh.console.Console.read(Console.java:397)
at org.jboss.aesh.console.Console.read(Console.java:346)
at org.jboss.as.cli.impl.Console$Factory$1.readLine(Console.java:178)
at org.jboss.as.cli.impl.CommandContextImpl.readLine(CommandContextImpl.java:750)
at
org.jboss.as.cli.impl.CommandContextImpl.handleSSLFailure(CommandContextImpl.java:966)
at org.jboss.as.cli.impl.CommandContextImpl.access$500(CommandContextImpl.java:170)
at
org.jboss.as.cli.impl.CommandContextImpl$LazyDelagatingTrustManager$1.run(CommandContextImpl.java:1636)
at
org.jboss.as.protocol.GeneralTimeoutHandler.suspendAndExecute(GeneralTimeoutHandler.java:45)
at
org.jboss.as.cli.impl.CommandContextImpl$LazyDelagatingTrustManager.checkServerTrusted(CommandContextImpl.java:1631)
at
sun.security.ssl.AbstractTrustManagerWrapper.checkServerTrusted(SSLContextImpl.java:827)
at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1328)
at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:153)
at sun.security.ssl.Handshaker.processLoop(Handshaker.java:868)
at sun.security.ssl.Handshaker$1.run(Handshaker.java:808)
at sun.security.ssl.Handshaker$1.run(Handshaker.java:806)
at java.security.AccessController.doPrivileged(Native Method)
at sun.security.ssl.Handshaker$DelegatedTask.run(Handshaker.java:1227)
- locked <0x00000007ac085000> (a sun.security.ssl.SSLEngineImpl)
at org.xnio.ssl.JsseSslConduitEngine.handleHandshake(JsseSslConduitEngine.java:542)
- locked <0x00000007ac085000> (a sun.security.ssl.SSLEngineImpl)
at org.xnio.ssl.JsseSslConduitEngine.wrap(JsseSslConduitEngine.java:313)
at org.xnio.ssl.JsseSslConduitEngine.wrap(JsseSslConduitEngine.java:203)
at org.xnio.ssl.JsseSslStreamSinkConduit.write(JsseSslStreamSinkConduit.java:98)
at org.xnio.ssl.JsseSslStreamSinkConduit.write(JsseSslStreamSinkConduit.java:72)
at org.xnio.conduits.ConduitStreamSinkChannel.write(ConduitStreamSinkChannel.java:150)
at
org.xnio.http.HttpUpgrade$HttpUpgradeState$StringWriteListener.handleEvent(HttpUpgrade.java:297)
at
org.xnio.http.HttpUpgrade$HttpUpgradeState$StringWriteListener.handleEvent(HttpUpgrade.java:284)
at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
at
org.xnio.conduits.WriteReadyHandler$ChannelListenerHandler.writeReady(WriteReadyHandler.java:65)
at org.xnio.nio.NioSocketConduit.handleReady(NioSocketConduit.java:93)
at org.xnio.nio.WorkerThread.run(WorkerThread.java:539)
{noformat}
{noformat}
"Thread-2" prio=5 tid=0x00007feefa0ca800 nid=0x440b in Object.wait()
[0x0000000121177000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000007ac03d518> (a java.lang.Object)
at java.lang.Object.wait(Object.java:503)
at
org.jboss.remoting3.spi.AbstractHandleableCloseable.close(AbstractHandleableCloseable.java:177)
- locked <0x00000007ac03d518> (a java.lang.Object)
at
org.jboss.as.cli.impl.CLIModelControllerClient$1.shutdown(CLIModelControllerClient.java:98)
at org.jboss.as.cli.impl.CliShutdownHook$1.run(CliShutdownHook.java:50)
- locked <0x00000007abd8b4a8> (a java.util.ArrayList)
at java.lang.Thread.run(Thread.java:744)
{noformat}