[
https://issues.apache.org/jira/browse/HADOOP-16082?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Siyao Meng updated HADOOP-16082:
--------------------------------
Description:
When debugging the FSImage corruption issue, I often need to know a file's or
directory's inode id. At this moment, the only way to do that is to use OIV
tool to dump the FSImage and look up the filename, which is very inefficient.
Here I propose adding option "-i" in FsShell that prints files' or directories'
inode id.
h2. Implementation
h3. For hdfs:// (HDFS)
fileId exists in HdfsLocatedFileStatus, which is already returned to
hdfs-client. We just need to print it in Ls#processPath().
h3. For file:// (Local FS)
h4. Linux
Use java.nio.
h4. Windows
Windows has the concept of "File ID" which is similar to inode id. It is unique
in NTFS and ReFS.
h3. For other FS
The fileId entry will be "0" in FileStatus if it is not set. We could either
ignore or throw an exception.
was:
When debugging the FSImage corruption issue, I often need to know a file's or
directory's inode id. At this moment, the only way to do that is to use OIV
tool to dump the FSImage and look up the filename, which is very inefficient.
Here I propose adding option "-i" in FsShell that prints files' or directories'
inode id.
h2. Implementation
h3. For hdfs:// (HDFS)
fileId exists in HdfsLocatedFileStatus, which is already returned to
hdfs-client. We just need to print it in Ls#processPath().
h3. For file://
h4. Linux
Use java.nio.
h4. Windows
Windows has the concept of "File ID" which is similar to inode id. It is unique
in NTFS and ReFS.
h3. For other FS
The fileId entry will be "0" in FileStatus if it is not set. We could either
ignore or throw an exception.
> FsShell ls: Add option -i to print inode id
> -------------------------------------------
>
> Key: HADOOP-16082
> URL: https://issues.apache.org/jira/browse/HADOOP-16082
> Project: Hadoop Common
> Issue Type: Improvement
> Components: common
> Reporter: Siyao Meng
> Assignee: Siyao Meng
> Priority: Major
>
> When debugging the FSImage corruption issue, I often need to know a file's or
> directory's inode id. At this moment, the only way to do that is to use OIV
> tool to dump the FSImage and look up the filename, which is very inefficient.
> Here I propose adding option "-i" in FsShell that prints files' or
> directories' inode id.
> h2. Implementation
> h3. For hdfs:// (HDFS)
> fileId exists in HdfsLocatedFileStatus, which is already returned to
> hdfs-client. We just need to print it in Ls#processPath().
> h3. For file:// (Local FS)
> h4. Linux
> Use java.nio.
> h4. Windows
> Windows has the concept of "File ID" which is similar to inode id. It is
> unique in NTFS and ReFS.
> h3. For other FS
> The fileId entry will be "0" in FileStatus if it is not set. We could either
> ignore or throw an exception.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]