Hi againafter some time. ;)

I was now able to reproduce the problem with a MINA test. Or let's say I did the brute-force approach by re-running one test in an endless loop. I have attached apatch of the test (against https://github.com/apache/mina/tree/2.0) and a stack trace. After a few loops the test is stuck. You can see a lot of threads hanging in dispose() and the test is stuck when it tries to dispose the acceptor.


What is a little strange is that the javadoc says that connector.dispose(TRUE) should not be called from an IoFutureListener, but in the test it is done anyway. However, changing the parameter to FALSE does not help either.

Is there anything that can be done to prevent this hang?

Many thanks in advance for your help and best regards,
Chris.


On 15/12/17 13:04, Christoph John wrote:
Hi again,

in the meantime I probably figured out where the problem is, but still have to do some more teststo be sure. I now have added logic to iterate over the managed sessions of an IoConnector and close them before calling IoConnector.dispose().

I will let you know if this solved the problem.

Thanks,
Chris.

On 16/10/17 16:20, Jonathan Valliere wrote:
If you can figure out a reproducible test case then I'm sure that we can fix it.

On Mon, Oct 16, 2017 at 10:01 AM Christoph John <christoph.j...@macd.com <mailto:christoph.j...@macd.com>> wrote:

    Hi Emmanuel,

    yes, but unfortunately it did not help.

    Thanks,
    Chris.


    On 16/10/17 15:41, Emmanuel Lécharny wrote:
    > Hi Christoph,
    >
    >
    > have you tried with this patch ? :
    >
    >
    > diff --git
    > 
a/mina-core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoProcessor.java
    > 
b/mina-core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoProcessor.java
    > index 50ebd4e..575b2f4 100644
    > ---
    > 
a/mina-core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoProcessor.java
    > +++
    > 
b/mina-core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoProcessor.java
    > @@ -695,8 +695,9 @@
    >                           for (Iterator<S> i = allSessions(); 
i.hasNext();) {
    >                               IoSession session = i.next();
    >
    > +                            scheduleRemove((S) session);
    > +
    >                               if (session.isActive()) {
    > -                                scheduleRemove((S) session);
    >                                   hasKeys = true;
    >                               }
    >                           }
    >
    >



--
Christoph John
Development & Support
T +49 241 557080-28
christoph.j...@macd.com

MACD GmbH
Oppenhoffallee 103
D-52066 Aachen
www.macd.com

Amtsgericht Aachen: HRB 8151
Ust.-Id: DE 813021663
Geschäftsführer: George Macdonald

diff --git 
a/mina-core/src/test/java/org/apache/mina/core/service/AbstractIoServiceTest.java
 
b/mina-core/src/test/java/org/apache/mina/core/service/AbstractIoServiceTest.java
index 2d70f8e..084b4fd 100644
--- 
a/mina-core/src/test/java/org/apache/mina/core/service/AbstractIoServiceTest.java
+++ 
b/mina-core/src/test/java/org/apache/mina/core/service/AbstractIoServiceTest.java
@@ -30,6 +30,7 @@
 import org.apache.mina.filter.logging.LoggingFilter;
 import org.apache.mina.transport.socket.nio.NioSocketAcceptor;
 import org.apache.mina.transport.socket.nio.NioSocketConnector;
+import org.apache.mina.util.AvailablePortFinder;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -48,11 +49,10 @@
  */
 public class AbstractIoServiceTest {
 
-    private static final int PORT = 9123;
-
     @Test
     public void testDispose() throws IOException, InterruptedException {
 
+        while ( true) {
         List<String> threadsBefore = getThreadNames();
 
         final IoAcceptor acceptor = new NioSocketAcceptor();
@@ -65,7 +65,8 @@
 
         acceptor.getSessionConfig().setReadBufferSize(2048);
         acceptor.getSessionConfig().setIdleTime(IdleStatus.BOTH_IDLE, 10);
-        acceptor.bind(new InetSocketAddress(PORT));
+        int nextAvailable = AvailablePortFinder.getNextAvailable();
+        acceptor.bind(new InetSocketAddress(nextAvailable));
         System.out.println("Server running ...");
 
         final NioSocketConnector connector = new NioSocketConnector();
@@ -79,7 +80,7 @@
                 new ProtocolCodecFilter(new 
TextLineCodecFactory(Charset.forName("UTF-8"))));
 
         // Start communication.
-        ConnectFuture cf = connector.connect(new 
InetSocketAddress("localhost", 9123));
+        ConnectFuture cf = connector.connect(new 
InetSocketAddress("localhost", nextAvailable));
         cf.awaitUninterruptibly();
 
         IoSession session = cf.getSession();
@@ -103,7 +104,9 @@
             public void operationComplete(IoFuture future) {
                 System.out.println("managed session count=" + 
connector.getManagedSessionCount());
                 System.out.println("Disposing connector ...");
-                connector.dispose(true);
+                // the doc states that the following should not be called with 
parameter TRUE from an IoFutureListener?!
+                // on the other hand, using FALSE does not work either
+                connector.dispose(true);    
                 System.out.println("Disposing connector ... *finished*");
 
             }
@@ -118,7 +121,7 @@
         System.out.println("threadsAfter  = " + threadsAfter);
 
         // Assert.assertEquals(threadsBefore, threadsAfter);
-
+    }
     }
 
     public static class ClientHandler extends IoHandlerAdapter {

2018-02-09 13:40:22
Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.131-b11 mixed mode):

"Attach Listener" #65 daemon prio=9 os_prio=0 tid=0x00007f4870001000 nid=0x16fc 
waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"pool-31-thread-2" #64 prio=5 os_prio=0 tid=0x00007f4858002000 nid=0x16db 
waiting on condition [0x00007f488c4f2000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078c3add88> (a 
java.util.concurrent.SynchronousQueue$TransferStack)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
        at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
        at 
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioProcessor-77" #62 prio=5 os_prio=0 tid=0x00007f4858001000 nid=0x16d9 
waiting on condition [0x00007f488cefb000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078c61abc0> (a 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
        at 
java.util.concurrent.ThreadPoolExecutor.awaitTermination(ThreadPoolExecutor.java:1465)
        at 
org.apache.mina.core.service.AbstractIoService.dispose(AbstractIoService.java:339)
        at 
org.apache.mina.core.service.AbstractIoServiceTest$1.operationComplete(AbstractIoServiceTest.java:109)
        at 
org.apache.mina.core.future.DefaultIoFuture.notifyListener(DefaultIoFuture.java:423)
        at 
org.apache.mina.core.future.DefaultIoFuture.notifyListeners(DefaultIoFuture.java:412)
        at 
org.apache.mina.core.future.DefaultIoFuture.setValue(DefaultIoFuture.java:327)
        at 
org.apache.mina.core.future.DefaultCloseFuture.setClosed(DefaultCloseFuture.java:56)
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.fireSessionClosed(DefaultIoFilterChain.java:581)
        at 
org.apache.mina.core.service.IoServiceListenerSupport.fireSessionDestroyed(IoServiceListenerSupport.java:251)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.removeNow(AbstractPollingIoProcessor.java:1159)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.removeSessions(AbstractPollingIoProcessor.java:860)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:663)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioProcessor-71" #61 prio=5 os_prio=0 tid=0x00007f484c006800 nid=0x16d8 
runnable [0x00007f488c8f6000]
   java.lang.Thread.State: RUNNABLE
        at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
        at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269)
        at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93)
        at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
        - locked <0x000000078c3aab80> (a sun.nio.ch.Util$3)
        - locked <0x000000078c3aab70> (a java.util.Collections$UnmodifiableSet)
        - locked <0x000000078c3aaa58> (a sun.nio.ch.EPollSelectorImpl)
        at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
        at 
org.apache.mina.transport.socket.nio.NioProcessor.select(NioProcessor.java:112)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:610)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioSocketConnector-16" #60 prio=5 os_prio=0 tid=0x00007f48ac2ce800 nid=0x16d7 
in Object.wait() [0x00007f488c9f7000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x000000078c3aee10> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.await0(DefaultIoFuture.java:218)
        - locked <0x000000078c3aee10> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.awaitUninterruptibly(DefaultIoFuture.java:148)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.dispose(AbstractPollingIoProcessor.java:188)
        at 
org.apache.mina.core.service.SimpleIoProcessorPool.dispose(SimpleIoProcessorPool.java:337)
        - locked <0x000000078c3add10> (a java.lang.Object)
        at 
org.apache.mina.core.polling.AbstractPollingIoConnector$Connector.run(AbstractPollingIoConnector.java:481)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioSocketAcceptor-15" #59 prio=5 os_prio=0 tid=0x00007f48ac2cf800 nid=0x16d6 
in Object.wait() [0x00007f488c6f4000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x000000078c3aa8b0> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.await0(DefaultIoFuture.java:218)
        - locked <0x000000078c3aa8b0> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.awaitUninterruptibly(DefaultIoFuture.java:148)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.dispose(AbstractPollingIoProcessor.java:188)
        at 
org.apache.mina.core.service.SimpleIoProcessorPool.dispose(SimpleIoProcessorPool.java:337)
        - locked <0x000000078c3a9e00> (a java.lang.Object)
        at 
org.apache.mina.core.polling.AbstractPollingIoAcceptor$Acceptor.run(AbstractPollingIoAcceptor.java:515)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"pool-27-thread-3" #57 prio=5 os_prio=0 tid=0x00007f482c00f800 nid=0x16d4 
waiting on condition [0x00007f488c5f3000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078c392b68> (a 
java.util.concurrent.SynchronousQueue$TransferStack)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
        at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
        at 
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"pool-27-thread-2" #55 prio=5 os_prio=0 tid=0x00007f482c008000 nid=0x16d2 
waiting on condition [0x00007f488c7f5000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078c392b68> (a 
java.util.concurrent.SynchronousQueue$TransferStack)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
        at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
        at 
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioProcessor-70" #53 prio=5 os_prio=0 tid=0x00007f482c001000 nid=0x16d0 
waiting on condition [0x00007f488caf7000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078c3a5890> (a 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
        at 
java.util.concurrent.ThreadPoolExecutor.awaitTermination(ThreadPoolExecutor.java:1465)
        at 
org.apache.mina.core.service.AbstractIoService.dispose(AbstractIoService.java:339)
        at 
org.apache.mina.core.service.AbstractIoServiceTest$1.operationComplete(AbstractIoServiceTest.java:109)
        at 
org.apache.mina.core.future.DefaultIoFuture.notifyListener(DefaultIoFuture.java:423)
        at 
org.apache.mina.core.future.DefaultIoFuture.notifyListeners(DefaultIoFuture.java:412)
        at 
org.apache.mina.core.future.DefaultIoFuture.setValue(DefaultIoFuture.java:327)
        at 
org.apache.mina.core.future.DefaultCloseFuture.setClosed(DefaultCloseFuture.java:56)
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.fireSessionClosed(DefaultIoFilterChain.java:581)
        at 
org.apache.mina.core.service.IoServiceListenerSupport.fireSessionDestroyed(IoServiceListenerSupport.java:251)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.removeNow(AbstractPollingIoProcessor.java:1159)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.removeSessions(AbstractPollingIoProcessor.java:860)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:663)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioSocketConnector-14" #51 prio=5 os_prio=0 tid=0x00007f48ac2cc800 nid=0x16ce 
in Object.wait() [0x00007f488cdfb000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x000000078c3a4ef0> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.await0(DefaultIoFuture.java:218)
        - locked <0x000000078c3a4ef0> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.awaitUninterruptibly(DefaultIoFuture.java:148)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.dispose(AbstractPollingIoProcessor.java:188)
        at 
org.apache.mina.core.service.SimpleIoProcessorPool.dispose(SimpleIoProcessorPool.java:337)
        - locked <0x000000078c392af0> (a java.lang.Object)
        at 
org.apache.mina.core.polling.AbstractPollingIoConnector$Connector.run(AbstractPollingIoConnector.java:481)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"pool-23-thread-3" #49 prio=5 os_prio=0 tid=0x00007f4814002000 nid=0x16cb 
waiting on condition [0x00007f488cbf9000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078ec351b8> (a 
java.util.concurrent.SynchronousQueue$TransferStack)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
        at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
        at 
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"pool-23-thread-2" #47 prio=5 os_prio=0 tid=0x00007f4814001000 nid=0x16ca 
waiting on condition [0x00007f4894889000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078ec351b8> (a 
java.util.concurrent.SynchronousQueue$TransferStack)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
        at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
        at 
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioProcessor-58" #46 prio=5 os_prio=0 tid=0x00007f4814003800 nid=0x16c9 
waiting on condition [0x00007f4894181000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078ec37840> (a 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
        at 
java.util.concurrent.ThreadPoolExecutor.awaitTermination(ThreadPoolExecutor.java:1465)
        at 
org.apache.mina.core.service.AbstractIoService.dispose(AbstractIoService.java:339)
        at 
org.apache.mina.core.service.AbstractIoServiceTest$1.operationComplete(AbstractIoServiceTest.java:109)
        at 
org.apache.mina.core.future.DefaultIoFuture.notifyListener(DefaultIoFuture.java:423)
        at 
org.apache.mina.core.future.DefaultIoFuture.notifyListeners(DefaultIoFuture.java:412)
        at 
org.apache.mina.core.future.DefaultIoFuture.setValue(DefaultIoFuture.java:327)
        at 
org.apache.mina.core.future.DefaultCloseFuture.setClosed(DefaultCloseFuture.java:56)
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.fireSessionClosed(DefaultIoFilterChain.java:581)
        at 
org.apache.mina.core.service.IoServiceListenerSupport.fireSessionDestroyed(IoServiceListenerSupport.java:251)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.removeNow(AbstractPollingIoProcessor.java:1159)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.removeSessions(AbstractPollingIoProcessor.java:860)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:663)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioSocketConnector-12" #44 prio=5 os_prio=0 tid=0x00007f48ac30d000 nid=0x16c7 
in Object.wait() [0x00007f488ccfa000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x000000078ec354b0> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.await0(DefaultIoFuture.java:218)
        - locked <0x000000078ec354b0> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.awaitUninterruptibly(DefaultIoFuture.java:148)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.dispose(AbstractPollingIoProcessor.java:188)
        at 
org.apache.mina.core.service.SimpleIoProcessorPool.dispose(SimpleIoProcessorPool.java:337)
        - locked <0x000000078ec6dee0> (a java.lang.Object)
        at 
org.apache.mina.core.polling.AbstractPollingIoConnector$Connector.run(AbstractPollingIoConnector.java:481)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioProcessor-46" #39 prio=5 os_prio=0 tid=0x00007f4834002800 nid=0x16c2 
waiting on condition [0x00007f488cffc000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078e9184e0> (a 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
        at 
java.util.concurrent.ThreadPoolExecutor.awaitTermination(ThreadPoolExecutor.java:1465)
        at 
org.apache.mina.core.service.AbstractIoService.dispose(AbstractIoService.java:339)
        at 
org.apache.mina.core.service.AbstractIoServiceTest$1.operationComplete(AbstractIoServiceTest.java:109)
        at 
org.apache.mina.core.future.DefaultIoFuture.notifyListener(DefaultIoFuture.java:423)
        at 
org.apache.mina.core.future.DefaultIoFuture.notifyListeners(DefaultIoFuture.java:412)
        at 
org.apache.mina.core.future.DefaultIoFuture.setValue(DefaultIoFuture.java:327)
        at 
org.apache.mina.core.future.DefaultCloseFuture.setClosed(DefaultCloseFuture.java:56)
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.fireSessionClosed(DefaultIoFilterChain.java:581)
        at 
org.apache.mina.core.service.IoServiceListenerSupport.fireSessionDestroyed(IoServiceListenerSupport.java:251)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.removeNow(AbstractPollingIoProcessor.java:1159)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.removeSessions(AbstractPollingIoProcessor.java:860)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:663)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioSocketConnector-10" #37 prio=5 os_prio=0 tid=0x00007f48ac2cb000 nid=0x16c0 
in Object.wait() [0x00007f4894a8b000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x000000078e909d08> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.await0(DefaultIoFuture.java:218)
        - locked <0x000000078e909d08> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.awaitUninterruptibly(DefaultIoFuture.java:148)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.dispose(AbstractPollingIoProcessor.java:188)
        at 
org.apache.mina.core.service.SimpleIoProcessorPool.dispose(SimpleIoProcessorPool.java:337)
        - locked <0x000000078e909d90> (a java.lang.Object)
        at 
org.apache.mina.core.polling.AbstractPollingIoConnector$Connector.run(AbstractPollingIoConnector.java:481)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"pool-15-thread-2" #35 prio=5 os_prio=0 tid=0x00007f481c003000 nid=0x16be 
waiting on condition [0x00007f4894283000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078e9104c8> (a 
java.util.concurrent.SynchronousQueue$TransferStack)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
        at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
        at 
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioProcessor-39" #32 prio=5 os_prio=0 tid=0x00007f481c001000 nid=0x16bb 
waiting on condition [0x00007f4894383000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078e910720> (a 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
        at 
java.util.concurrent.ThreadPoolExecutor.awaitTermination(ThreadPoolExecutor.java:1465)
        at 
org.apache.mina.core.service.AbstractIoService.dispose(AbstractIoService.java:339)
        at 
org.apache.mina.core.service.AbstractIoServiceTest$1.operationComplete(AbstractIoServiceTest.java:109)
        at 
org.apache.mina.core.future.DefaultIoFuture.notifyListener(DefaultIoFuture.java:423)
        at 
org.apache.mina.core.future.DefaultIoFuture.notifyListeners(DefaultIoFuture.java:412)
        at 
org.apache.mina.core.future.DefaultIoFuture.setValue(DefaultIoFuture.java:327)
        at 
org.apache.mina.core.future.DefaultCloseFuture.setClosed(DefaultCloseFuture.java:56)
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.fireSessionClosed(DefaultIoFilterChain.java:581)
        at 
org.apache.mina.core.service.IoServiceListenerSupport.fireSessionDestroyed(IoServiceListenerSupport.java:251)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.removeNow(AbstractPollingIoProcessor.java:1159)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.removeSessions(AbstractPollingIoProcessor.java:860)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:663)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioSocketConnector-8" #30 prio=5 os_prio=0 tid=0x00007f48ac2ca000 nid=0x16b9 
in Object.wait() [0x00007f4894586000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x000000078e910c50> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.await0(DefaultIoFuture.java:218)
        - locked <0x000000078e910c50> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.awaitUninterruptibly(DefaultIoFuture.java:148)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.dispose(AbstractPollingIoProcessor.java:188)
        at 
org.apache.mina.core.service.SimpleIoProcessorPool.dispose(SimpleIoProcessorPool.java:337)
        - locked <0x000000078e913218> (a java.lang.Object)
        at 
org.apache.mina.core.polling.AbstractPollingIoConnector$Connector.run(AbstractPollingIoConnector.java:481)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"pool-11-thread-2" #28 prio=5 os_prio=0 tid=0x00007f484000a000 nid=0x16b7 
waiting on condition [0x00007f4894485000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078e916550> (a 
java.util.concurrent.SynchronousQueue$TransferStack)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
        at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
        at 
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioProcessor-27" #26 prio=5 os_prio=0 tid=0x00007f4840001000 nid=0x16b5 
waiting on condition [0x00007f4894687000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078e917a58> (a 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
        at 
java.util.concurrent.ThreadPoolExecutor.awaitTermination(ThreadPoolExecutor.java:1465)
        at 
org.apache.mina.core.service.AbstractIoService.dispose(AbstractIoService.java:339)
        at 
org.apache.mina.core.service.AbstractIoServiceTest$1.operationComplete(AbstractIoServiceTest.java:109)
        at 
org.apache.mina.core.future.DefaultIoFuture.notifyListener(DefaultIoFuture.java:423)
        at 
org.apache.mina.core.future.DefaultIoFuture.notifyListeners(DefaultIoFuture.java:412)
        at 
org.apache.mina.core.future.DefaultIoFuture.setValue(DefaultIoFuture.java:327)
        at 
org.apache.mina.core.future.DefaultCloseFuture.setClosed(DefaultCloseFuture.java:56)
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.fireSessionClosed(DefaultIoFilterChain.java:581)
        at 
org.apache.mina.core.service.IoServiceListenerSupport.fireSessionDestroyed(IoServiceListenerSupport.java:251)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.removeNow(AbstractPollingIoProcessor.java:1159)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.removeSessions(AbstractPollingIoProcessor.java:860)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:663)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioSocketConnector-6" #24 prio=5 os_prio=0 tid=0x00007f48ac317000 nid=0x16b3 
in Object.wait() [0x00007f4894d8e000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x000000078ea140d0> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.await0(DefaultIoFuture.java:218)
        - locked <0x000000078ea140d0> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.awaitUninterruptibly(DefaultIoFuture.java:148)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.dispose(AbstractPollingIoProcessor.java:188)
        at 
org.apache.mina.core.service.SimpleIoProcessorPool.dispose(SimpleIoProcessorPool.java:337)
        - locked <0x000000078e900a08> (a java.lang.Object)
        at 
org.apache.mina.core.polling.AbstractPollingIoConnector$Connector.run(AbstractPollingIoConnector.java:481)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"pool-7-thread-3" #22 prio=5 os_prio=0 tid=0x00007f4848005000 nid=0x16b1 
waiting on condition [0x00007f4894788000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078e900c90> (a 
java.util.concurrent.SynchronousQueue$TransferStack)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
        at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
        at 
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"pool-7-thread-2" #20 prio=5 os_prio=0 tid=0x00007f4848004000 nid=0x16af 
waiting on condition [0x00007f4895091000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078e900c90> (a 
java.util.concurrent.SynchronousQueue$TransferStack)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
        at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
        at 
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioProcessor-20" #19 prio=5 os_prio=0 tid=0x00007f4848003000 nid=0x16ae 
waiting on condition [0x00007f489498a000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078e902420> (a 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
        at 
java.util.concurrent.ThreadPoolExecutor.awaitTermination(ThreadPoolExecutor.java:1465)
        at 
org.apache.mina.core.service.AbstractIoService.dispose(AbstractIoService.java:339)
        at 
org.apache.mina.core.service.AbstractIoServiceTest$1.operationComplete(AbstractIoServiceTest.java:109)
        at 
org.apache.mina.core.future.DefaultIoFuture.notifyListener(DefaultIoFuture.java:423)
        at 
org.apache.mina.core.future.DefaultIoFuture.notifyListeners(DefaultIoFuture.java:412)
        at 
org.apache.mina.core.future.DefaultIoFuture.setValue(DefaultIoFuture.java:327)
        at 
org.apache.mina.core.future.DefaultCloseFuture.setClosed(DefaultCloseFuture.java:56)
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.fireSessionClosed(DefaultIoFilterChain.java:581)
        at 
org.apache.mina.core.service.IoServiceListenerSupport.fireSessionDestroyed(IoServiceListenerSupport.java:251)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.removeNow(AbstractPollingIoProcessor.java:1159)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.removeSessions(AbstractPollingIoProcessor.java:860)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:663)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioSocketConnector-4" #17 prio=5 os_prio=0 tid=0x00007f48ac414000 nid=0x16ac 
in Object.wait() [0x00007f4894b8c000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x000000078e919348> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.await0(DefaultIoFuture.java:218)
        - locked <0x000000078e919348> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.awaitUninterruptibly(DefaultIoFuture.java:148)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.dispose(AbstractPollingIoProcessor.java:188)
        at 
org.apache.mina.core.service.SimpleIoProcessorPool.dispose(SimpleIoProcessorPool.java:337)
        - locked <0x000000078e9193d0> (a java.lang.Object)
        at 
org.apache.mina.core.polling.AbstractPollingIoConnector$Connector.run(AbstractPollingIoConnector.java:481)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"pool-3-thread-2" #14 prio=5 os_prio=0 tid=0x00007f4850009000 nid=0x16a9 
waiting on condition [0x00007f4894c8d000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078ea172e8> (a 
java.util.concurrent.SynchronousQueue$TransferStack)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
        at 
java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
        at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
        at 
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioProcessor-8" #12 prio=5 os_prio=0 tid=0x00007f4850008000 nid=0x16a7 waiting 
on condition [0x00007f4894e8e000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078ea188a8> (a 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
        at 
java.util.concurrent.ThreadPoolExecutor.awaitTermination(ThreadPoolExecutor.java:1465)
        at 
org.apache.mina.core.service.AbstractIoService.dispose(AbstractIoService.java:339)
        at 
org.apache.mina.core.service.AbstractIoServiceTest$1.operationComplete(AbstractIoServiceTest.java:109)
        at 
org.apache.mina.core.future.DefaultIoFuture.notifyListener(DefaultIoFuture.java:423)
        at 
org.apache.mina.core.future.DefaultIoFuture.notifyListeners(DefaultIoFuture.java:412)
        at 
org.apache.mina.core.future.DefaultIoFuture.setValue(DefaultIoFuture.java:327)
        at 
org.apache.mina.core.future.DefaultCloseFuture.setClosed(DefaultCloseFuture.java:56)
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.fireSessionClosed(DefaultIoFilterChain.java:581)
        at 
org.apache.mina.core.service.IoServiceListenerSupport.fireSessionDestroyed(IoServiceListenerSupport.java:251)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.removeNow(AbstractPollingIoProcessor.java:1159)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.removeSessions(AbstractPollingIoProcessor.java:860)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:663)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"NioSocketConnector-2" #11 prio=5 os_prio=0 tid=0x00007f48ac310800 nid=0x16a6 
in Object.wait() [0x00007f4894f90000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x000000078e91b650> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.await0(DefaultIoFuture.java:218)
        - locked <0x000000078e91b650> (a 
org.apache.mina.core.future.DefaultIoFuture)
        at 
org.apache.mina.core.future.DefaultIoFuture.awaitUninterruptibly(DefaultIoFuture.java:148)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.dispose(AbstractPollingIoProcessor.java:188)
        at 
org.apache.mina.core.service.SimpleIoProcessorPool.dispose(SimpleIoProcessorPool.java:337)
        - locked <0x000000078e91b6d8> (a java.lang.Object)
        at 
org.apache.mina.core.polling.AbstractPollingIoConnector$Connector.run(AbstractPollingIoConnector.java:481)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

"ReaderThread" #9 prio=5 os_prio=0 tid=0x00007f48ac12f800 nid=0x16a4 runnable 
[0x00007f48953a3000]
   java.lang.Thread.State: RUNNABLE
        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
        at java.net.SocketInputStream.read(SocketInputStream.java:171)
        at java.net.SocketInputStream.read(SocketInputStream.java:141)
        at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
        at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
        at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
        - locked <0x000000078e905cf8> (a java.io.InputStreamReader)
        at java.io.InputStreamReader.read(InputStreamReader.java:184)
        at java.io.BufferedReader.fill(BufferedReader.java:161)
        at java.io.BufferedReader.readLine(BufferedReader.java:324)
        - locked <0x000000078e905cf8> (a java.io.InputStreamReader)
        at java.io.BufferedReader.readLine(BufferedReader.java:389)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner$ReaderThread.run(RemoteTestRunner.java:148)

"Service Thread" #8 daemon prio=9 os_prio=0 tid=0x00007f48ac0c2000 nid=0x16a1 
runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C1 CompilerThread2" #7 daemon prio=9 os_prio=0 tid=0x00007f48ac0bf000 
nid=0x16a0 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread1" #6 daemon prio=9 os_prio=0 tid=0x00007f48ac0bd000 
nid=0x169f waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread0" #5 daemon prio=9 os_prio=0 tid=0x00007f48ac0ba800 
nid=0x169e waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" #4 daemon prio=9 os_prio=0 tid=0x00007f48ac0b6800 
nid=0x169d runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Finalizer" #3 daemon prio=8 os_prio=0 tid=0x00007f48ac084800 nid=0x169c in 
Object.wait() [0x00007f4896117000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x000000078e91e430> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
        - locked <0x000000078e91e430> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
        at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)

"Reference Handler" #2 daemon prio=10 os_prio=0 tid=0x00007f48ac080000 
nid=0x169b in Object.wait() [0x00007f4896218000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x000000078e91e660> (a java.lang.ref.Reference$Lock)
        at java.lang.Object.wait(Object.java:502)
        at java.lang.ref.Reference.tryHandlePending(Reference.java:191)
        - locked <0x000000078e91e660> (a java.lang.ref.Reference$Lock)
        at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153)

"main" #1 prio=5 os_prio=0 tid=0x00007f48ac00a800 nid=0x1691 waiting on 
condition [0x00007f48b31d6000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x000000078c3acb90> (a 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at 
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
        at 
java.util.concurrent.ThreadPoolExecutor.awaitTermination(ThreadPoolExecutor.java:1465)
        at 
org.apache.mina.core.service.AbstractIoService.dispose(AbstractIoService.java:339)
        at 
org.apache.mina.core.service.AbstractIoServiceTest.testDispose(AbstractIoServiceTest.java:116)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
        at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
        at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
        at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
        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.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86)
        at 
org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:538)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:760)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:460)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:206)

"VM Thread" os_prio=0 tid=0x00007f48ac078800 nid=0x169a runnable 

"GC task thread#0 (ParallelGC)" os_prio=0 tid=0x00007f48ac01f800 nid=0x1696 
runnable 

"GC task thread#1 (ParallelGC)" os_prio=0 tid=0x00007f48ac021800 nid=0x1697 
runnable 

"GC task thread#2 (ParallelGC)" os_prio=0 tid=0x00007f48ac023000 nid=0x1698 
runnable 

"GC task thread#3 (ParallelGC)" os_prio=0 tid=0x00007f48ac025000 nid=0x1699 
runnable 

"VM Periodic Task Thread" os_prio=0 tid=0x00007f48ac0c4800 nid=0x16a3 waiting 
on condition 

JNI global references: 51

Reply via email to