IoConnectot.dispose blocks forever
----------------------------------

                 Key: DIRMINA-755
                 URL: https://issues.apache.org/jira/browse/DIRMINA-755
             Project: MINA
          Issue Type: Bug
    Affects Versions: 2.0.0-RC1
            Reporter: Emmanuel Lecharny
             Fix For: 2.0.0-RC2


(Extracted from the ML)

I recently switched from 2.0.0-M6 to 2.0.0-RC1 and now discovered a
problem with the IoConnector (I'm using the nio stuff)...

I'll try to explain:

In case of network connection shutdown I try to clean up as good as
possible. I terminate tread pools, I close the session, and finally I try
to dispose the IoConnector. 

Here's a small code-snippet from my shutdown-code:

----
CloseFuture closeFuture = ctsc.getSession().close(false);

                    closeFuture.addListener(new
IoFutureListener<IoFuture>() {

                        public void operationComplete(IoFuture future) {
                            ctsc.getFilterchainWorkerPool().shutdown();
                            System.out.println("managed session count=
"+ctsc.getConnector().getManagedSessionCount());
                            ctsc.getConnector().dispose();
                        }
                    });
----

"ctsc" is a simple container which contains the session (getSession) and
the used connection (getConnector). First I try to close the session. Then,
if this operation is completed, I try to shutdown a thread pool and finally
dispose the connector. I read in the api doc, that this dispose call may
block in case of still open session related to this connector.

I tried to print out the number of still open sessions. On the console I
get: "managed session count= 0"
But the next call, the dispose() call, blocks and prevents the remaining
threads from shutdown to get a clean application termination.

If I switch from RC1 backt o M6, this works quite well. 

Am I doing something wrong? Has the behavior changed? *little bit
confused*


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to