You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Siyao Meng (JIRA)" <ji...@apache.org> on 2019/01/29 06:42:00 UTC

[jira] [Created] (HADOOP-16082) FsShell ls: Add option -i to print inode id

Siyao Meng created HADOOP-16082:
-----------------------------------

             Summary: 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


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.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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