GauthamBanasandra opened a new pull request, #7654:
URL: https://github.com/apache/hadoop/pull/7654

   <!--
     Thanks for sending a pull request!
       1. If this is your first time, please read our contributor guidelines: 
https://cwiki.apache.org/confluence/display/HADOOP/How+To+Contribute
       2. Make sure your PR title starts with JIRA issue id, e.g., 
'HADOOP-17799. Your PR title ...'.
   -->
   
   ### Description of PR
   
   The Apache Commons Net FTP library is used for `FTPFileSystem`. In 
`TestFTPFileSystem#testRenameFileWithFullQualifiedPath()`, the FS operations 
(such as touch and rename) are made using absolute paths. However, the library 
expects relative paths.
   This caused `FTPFileSystem#getFileStatus()` to throw `FileNotFoundException` 
since the library was trying to look for the absolute path under which the 
FileSystem was mounted.
   
   This worked fine on Linux as it just appended the absolute path under the 
FileSystem's mount path -
   
![image](https://github.com/user-attachments/assets/7ebf1d96-76ca-4388-8549-ee5a4942394f)
   
   However, this fails on Windows since suffixing the absolute path under the 
FileSystem's mount path doesn't yield a valid path due to the drive letter in 
the absolute path.
   
   Consider the following illustration -
   ## On Linux
   ```
   path1 => /mnt/d/a/b
   path2 => /mnt/d/x/y
   path1 + path2 yields a valid path => /mnt/d/a/b/mnt/d/x/y
   ```
   
   ## On Windows
   
   ```
   path1 => C:\a\b
   path2 => C:\x\y
   path1 + path2 doesn't yield a valid path => C:\a\b\C:\x\y
   ```
   
   So, to fix this, we need to treat the FS operations as purely relative.
   
   ### How was this patch tested?
   
   - Ran the unit tests locally.
   - Jenkins CI validation.
   
   ### For code changes:
   
   - [x] Does the title or this PR starts with the corresponding JIRA issue id 
(e.g. 'HADOOP-17799. Your PR title ...')?
   - [ ] Object storage: have the integration tests been executed and the 
endpoint declared according to the connector-specific documentation?
   - [ ] If adding new dependencies to the code, are these dependencies 
licensed in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)?
   - [ ] If applicable, have you updated the `LICENSE`, `LICENSE-binary`, 
`NOTICE-binary` files?
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: common-issues-h...@hadoop.apache.org

Reply via email to