mina-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Guillaume Nodet (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (SSHD-123) TcpipForward race condition & deadlock on client disconnect.
Date Mon, 21 May 2012 14:10:41 GMT

     [ https://issues.apache.org/jira/browse/SSHD-123?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Guillaume Nodet resolved SSHD-123.
----------------------------------

       Resolution: Fixed
    Fix Version/s: 0.7.0
         Assignee: Guillaume Nodet

Thx for the test and patch Bill.  I've slightly reworked the fix to delay the block until
the first write, which seems to work better.
                
> TcpipForward race condition & deadlock on client disconnect.
> ------------------------------------------------------------
>
>                 Key: SSHD-123
>                 URL: https://issues.apache.org/jira/browse/SSHD-123
>             Project: MINA SSHD
>          Issue Type: Bug
>    Affects Versions: 0.3.0, 0.5.0, 0.6.0
>         Environment: I am able to reproduce this every single time on my quad core windows
7 machine.
>            Reporter: Bill Kuker
>            Assignee: Guillaume Nodet
>             Fix For: 0.7.0
>
>         Attachments: SSHD-123-Stacks.test.txt, SSHD-123.patch, SSHD_123_Test.java
>
>
> If a client with an active remote port forward disconnects at about the same time a new
connection comes in to that port forward two NioProcessor threads end up deadlocked in TcpipForwardSupport,
at the following spots:
> NioProcessor-14 stuck at org.apache.sshd.server.session.TcpipForwardSupport.sessionCreated(...):
> OpenFuture future = channel.open().await();
> NioProcessor-2 stuck at org.apache.sshd.server.session.TcpipForwardSupport.close():
> acceptor.dispose();
> It appears that the new connection to the port forward is trying to create a new channel
over a session that is currently trying to close. Both threads end up waiting on different
objects, and are never notified.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message