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

ASF subversion and git services commented on NIFI-9507:
-------------------------------------------------------

Commit 898f9a48bcb75a68a77a8c241821c5d39e75ab24 in nifi's branch 
refs/heads/support/nifi-1.15 from David Handermann
[ https://gitbox.apache.org/repos/asf?p=nifi.git;h=898f9a4 ]

NIFI-9507 Corrected SSH Client handling on connect failures

- Refactored SSH Client configuration and connection to SSHClientProvider
- Implemented exception handling for configuration and connection failures
- Named SSH keep-alive thread for improved runtime tracking
- Closed SSH Client and interrupted keep-alive thread on configuration failures
- Added missing Compression Property to ListSFTP
- Corrected Hostname and Port property descriptors in ListSFTP


> FetchSFTP spawns multiple keep-alive threads on failed connections
> ------------------------------------------------------------------
>
>                 Key: NIFI-9507
>                 URL: https://issues.apache.org/jira/browse/NIFI-9507
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Extensions
>    Affects Versions: 1.12.0, 1.15.1
>            Reporter: David Handermann
>            Assignee: David Handermann
>            Priority: Major
>             Fix For: 1.16.0, 1.15.2
>
>          Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> The {{FetchSFTP}} processor relies on the shared {{SFTPTransfer}} class to 
> handle SFTP communication using the SSHJ library starting in NiFi 1.12.0.  
> The {{SFTPTransfer}} class instantiates and configures an {{SSHClient}} based 
> on processor properties, calling the {{connect}} method after initial 
> configuration.
> The {{SSHClient.connect}} method can throw an {{IOException}} on failure to 
> reach the remote SFTP server, but the NiFi {{SFTPTransfer}} class does not 
> close in the {{{}SSHClient{}}}.  Although {{FetchSFTP}} catches the 
> {{IOException}} in the parent {{FetchFileTransfer.onTrigger}} method, the 
> processor never closes the failed {{SSHClient}} because {{SFTPTransfer}} 
> never assigned the instance variable.
> The creation and lifecycle of the {{SSHClient}} inside {{SFTPTransfer}} 
> should be adjusted to ensure closure of {{SSHClient}} and the associated 
> keep-alive thread.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to