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

Layon updated NIFI-9196:
------------------------
    Description: 
Scenario:

NiFi running on windows

 
 # FetchSFTP processor reads files from a remote SFTP server *(ok)*
 # FetchSFTP then is configured to perform a "completion strategy" of moving 
the fetched files to another remote directory *(fails)*

 

It was found that FetchSFTP (who extends FetchFileTransfer) alters the property 
"Move Destination Directory" 

 

Example: 
 * Source Remote file:                    /sftp/file1.txt
 * Move Destination Directory:      /sftp/done
 * Intended file after move:           /sftp/done/file1.txt
 * After execution, is is found that FetchSFTP sent the SFTP command to rename 
the file to: {color:#ff0000}C:\sftp\done\file1.txt{color}, so the SFTP server 
rejects the operation. The correct path to send is: 
{color:#0747a6}/sftp/done/file1.txt{color}

 

Error appears to be in the following code:
 * Class: org.apache.nifi.processors.standard.FetchFileTransfer
 * method: performCompletionStrategy
 * Line: transfer.rename(flowFile, filename, 
targetFile.get{color:#ff0000}Absolute{color}Path());
 ** Correct method to call appears to be targetFile.getPath()

 

 

 

 

 

  was:
Scenario:

NiFi running on windows

 
 # FetchSFTP processor reads files from a remote SFTP server *(ok)*
 # FetchSFTP then is configured to perform a "completion strategy" of moving 
the fetched files to another remote directory *(fails)*

 

It was found that FetchSFTP (who extends FetchFileTransfer) alters the property 
"Move Destination Directory" 

 

Example: 
 * Source Remote file:                    /sftp/file1.txt
 * Move Destination Directory:      /sftp/done
 * Intended file after move:           /sftp/done/file1.txt
 * After execution, is is found that FetchSFTP sent the SFTP to rename the file 
to: {color:#FF0000}C:\sftp\done\file1.txt{color}, so the SFTP server rejects 
the operation. The correct path to send is: /sftp/done/file1.txt

 

Error appears to be in the following code:
 * Class: org.apache.nifi.processors.standard.FetchFileTransfer
 * method: performCompletionStrategy
 * Line: transfer.rename(flowFile, filename, 
targetFile.get{color:#FF0000}Absolute{color}Path());
 ** Correct method to call appears to be targetFile.getPath()

 

 

 

 

 


> FetchFileTransfer erroneously alters Destination Directory when performing 
> COMPLETION_STRATEGY
> ----------------------------------------------------------------------------------------------
>
>                 Key: NIFI-9196
>                 URL: https://issues.apache.org/jira/browse/NIFI-9196
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Core Framework
>    Affects Versions: 1.14.0
>         Environment: MS Windows 10 Version 20H2 (compilation 19042.1165)
> Java SE Runtime Environment (build 16.0.1+9-24)
> Connecting to a remote SFTP server (OpenSSL)
>            Reporter: Layon
>            Priority: Minor
>              Labels: fetchsftp, ftp, transfer, windows
>         Attachments: Capture.PNG
>
>
> Scenario:
> NiFi running on windows
>  
>  # FetchSFTP processor reads files from a remote SFTP server *(ok)*
>  # FetchSFTP then is configured to perform a "completion strategy" of moving 
> the fetched files to another remote directory *(fails)*
>  
> It was found that FetchSFTP (who extends FetchFileTransfer) alters the 
> property "Move Destination Directory" 
>  
> Example: 
>  * Source Remote file:                    /sftp/file1.txt
>  * Move Destination Directory:      /sftp/done
>  * Intended file after move:           /sftp/done/file1.txt
>  * After execution, is is found that FetchSFTP sent the SFTP command to 
> rename the file to: {color:#ff0000}C:\sftp\done\file1.txt{color}, so the SFTP 
> server rejects the operation. The correct path to send is: 
> {color:#0747a6}/sftp/done/file1.txt{color}
>  
> Error appears to be in the following code:
>  * Class: org.apache.nifi.processors.standard.FetchFileTransfer
>  * method: performCompletionStrategy
>  * Line: transfer.rename(flowFile, filename, 
> targetFile.get{color:#ff0000}Absolute{color}Path());
>  ** Correct method to call appears to be targetFile.getPath()
>  
>  
>  
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to