[ 
https://issues.apache.org/jira/browse/SSHD-340?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14109095#comment-14109095
 ] 

Sampo Savolainen commented on SSHD-340:
---------------------------------------

I can't find where to upload attachments. Here's the thread dump:

2014-08-25 16:09:49
Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.45-b01 mixed mode):

"DestroyJavaVM" prio=10 tid=0x00007f183400c000 nid=0x691d waiting on condition 
[0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"pool-1-thread-1" prio=10 tid=0x00007f17e000a000 nid=0x693a waiting on 
condition [0x00007f182d837000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x00000007ad263e50> (a 
java.util.concurrent.SynchronousQueue$TransferStack)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:196)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:424)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:323)
        at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:874)
        at 
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:955)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:917)
        at java.lang.Thread.run(Thread.java:662)

"java-sdk-http-connection-reaper" daemon prio=10 tid=0x00007f1834511800 
nid=0x6935 waiting on condition [0x00007f182e287000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
        at java.lang.Thread.sleep(Native Method)
        at 
com.amazonaws.http.IdleConnectionReaper.run(IdleConnectionReaper.java:81)

"Low Memory Detector" daemon prio=10 tid=0x00007f18340a5800 nid=0x6933 runnable 
[0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread1" daemon prio=10 tid=0x00007f18340a3000 nid=0x6932 waiting 
on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread0" daemon prio=10 tid=0x00007f18340a0800 nid=0x6931 waiting 
on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"JDWP Command Reader" daemon prio=10 tid=0x00007f180c001000 nid=0x692e runnable 
[0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"JDWP Event Helper Thread" daemon prio=10 tid=0x00007f183409e000 nid=0x692d 
runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"JDWP Transport Listener: dt_socket" daemon prio=10 tid=0x00007f183409a800 
nid=0x692a runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" daemon prio=10 tid=0x00007f183408d800 nid=0x6928 waiting on 
condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Finalizer" daemon prio=10 tid=0x00007f1834072000 nid=0x6924 in Object.wait() 
[0x00007f182f318000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x00000007b0e68070> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
        - locked <0x00000007b0e68070> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
        at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:171)

"Reference Handler" daemon prio=10 tid=0x00007f1834070000 nid=0x6923 in 
Object.wait() [0x00007f182f419000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x00000007b0e50340> (a java.lang.ref.Reference$Lock)
        at java.lang.Object.wait(Object.java:485)
        at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
        - locked <0x00000007b0e50340> (a java.lang.ref.Reference$Lock)

"VM Thread" prio=10 tid=0x00007f1834069800 nid=0x6922 runnable 

"GC task thread#0 (ParallelGC)" prio=10 tid=0x00007f183401f000 nid=0x691e 
runnable 

"GC task thread#1 (ParallelGC)" prio=10 tid=0x00007f1834020800 nid=0x691f 
runnable 

"GC task thread#2 (ParallelGC)" prio=10 tid=0x00007f1834022800 nid=0x6920 
runnable 

"GC task thread#3 (ParallelGC)" prio=10 tid=0x00007f1834024800 nid=0x6921 
runnable 

"VM Periodic Task Thread" prio=10 tid=0x00007f18340b8800 nid=0x6934 waiting on 
condition 

JNI global references: 5190

Heap
 PSYoungGen      total 74368K, used 38598K [0x00000007ad000000, 
0x00000007b6140000, 0x0000000800000000)
  eden space 63808K, 51% used 
[0x00000007ad000000,0x00000007af04ee10,0x00000007b0e50000)
  from space 10560K, 52% used 
[0x00000007b0e50000,0x00000007b13b2b50,0x00000007b18a0000)
  to   space 10560K, 0% used 
[0x00000007b56f0000,0x00000007b56f0000,0x00000007b6140000)
 PSOldGen        total 169984K, used 0K [0x0000000707000000, 
0x0000000711600000, 0x00000007ad000000)
  object space 169984K, 0% used 
[0x0000000707000000,0x0000000707000000,0x0000000711600000)
 PSPermGen       total 26432K, used 26364K [0x0000000701e00000, 
0x00000007037d0000, 0x0000000707000000)
  object space 26432K, 99% used 
[0x0000000701e00000,0x00000007037bf2d0,0x00000007037d0000)


> Hanging threads
> ---------------
>
>                 Key: SSHD-340
>                 URL: https://issues.apache.org/jira/browse/SSHD-340
>             Project: MINA SSHD
>          Issue Type: Bug
>    Affects Versions: 0.12.0
>            Reporter: Sampo Savolainen
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> SSHD fails to stop properly due to errant threads. I've attached a thread 
> dump from a point of execution where everything should have been cleaned up. 
> The hanging threads happen only if the server has accepted connections and 
> they do not hang forever, they seem to stop themselves after a minute or so. 
> This might be an executor pool which is not shut down correctly.
> Earlier versions (0.8.0 and 0.9.0) did not exhibit this behavior.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to