You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mina.apache.org by "Roman Vottner (JIRA)" <ji...@apache.org> on 2016/06/09 13:56:20 UTC

[jira] [Commented] (SSHD-669) Destroying SftpSubsystem on client disconnect will terminate external ExecutorService - preventing re-connects

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

Roman Vottner commented on SSHD-669:
------------------------------------

Seems like I' just needed to set the shutdownOnExit flag on the constructor to false. My bad ...

> Destroying SftpSubsystem on client disconnect will terminate external ExecutorService - preventing re-connects
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: SSHD-669
>                 URL: https://issues.apache.org/jira/browse/SSHD-669
>             Project: MINA SSHD
>          Issue Type: Bug
>    Affects Versions: 1.2.0
>            Reporter: Roman Vottner
>
> In SftpSubsystem on performing the destroy logic (on a client disconnect f.e.), the code will also terminate the current executor service as well. https://github.com/apache/mina-sshd/blob/master/sshd-core/src/main/java/org/apache/sshd/server/subsystem/sftp/SftpSubsystem.java#L3374-L3379
> If the executor service is defined externally and injected via SftpSubsystemFactory.setExecutorService(executorService) this will prevent re-connects from users or even fail requests issued by other users (in a multi user scenario).
> In addition to that, as SftpSubsystem's "closed" field is declared as private, a child class of SftpSubsystem which needs to customize destroy (in order to prevent the executor shutdown) needs to define its own "closed" field version on overwriting the parent class and copy & paste the otherwise unneeded run-method from the parent as well. Please, change the scope of "closed" to protected or privide a getter in the Subsystem to retrieve the current state.
> I've tested this only with 1.2.0 yet



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)