Uploaded image for project: 'MINA'
  1. MINA
  2. DIRMINA-755

IoConnectot.dispose blocks forever

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.0.0-RC1
    • 2.0.0
    • None
    • None

    Description

      (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*

      Attachments

        1. MinaTest.zip
          22 kB
          Emmanuel Lécharny

        Activity

          People

            Unassigned Unassigned
            elecharny Emmanuel Lécharny
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: