Details
-
Bug
-
Status: Open
-
Minor
-
Resolution: Unresolved
-
0.15
-
None
Description
In the Org.Apache.REEF.IO.FileSystem.IFileSystem, we have many methods that are based on C#'s Uri. For example:
void CopyToLocal(Uri remoteFileUri, string localName); void CreateDirectory(Uri directoryUri); ...
From the logging and my experiments, this converts path to lowercase characters. For example:
new Uri("hdfs://XYZ123/mypath/data.txt") // Returns "hdfs://xyz123/mypath/data.txt"
If we are interacting with hdfs, in the subsequent dfs command in Org.Apache.REEF.IO.FileSystem.Hadoop:
public void CopyToLocal(Uri remoteFileUri, string localName) { _commandRunner.Run("dfs -get " + remoteFileUri + " " + localName); }
this will fail, since hdfs is case-sensitive. I'm wondering if we are open to the idea of having some string based APIs that ensure users that they are passing the exact path as they specified in their code. Thanks!
Here is the link to the PR: #1329
Attachments
Issue Links
- links to