[
https://issues.apache.org/jira/browse/HDFS-5802?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14803388#comment-14803388
]
Yongjun Zhang commented on HDFS-5802:
-------------------------------------
Hi [~xiaochen],
Thanks for the new rev. Rev 2 looks good to me, two small nits
{code}
195 /**
196 * Check whether an exception is due to inode type not directory
197 */
198 private void checkAncestorType(INode[] inodes, int ancestorIndex,
199 AccessControlException e) throws
AccessControlException {
{code}
1. Suggest to change the comment above to
"Check whether exception e is due to an ancestor inode's not being
directory"
2. indention of line 199 should be 4
+1 after that, pending jenkins tests.
Thanks.
> NameNode does not check for inode type before traversing down a path
> --------------------------------------------------------------------
>
> Key: HDFS-5802
> URL: https://issues.apache.org/jira/browse/HDFS-5802
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: namenode
> Affects Versions: 2.0.0-alpha
> Reporter: Harsh J
> Assignee: Xiao Chen
> Priority: Trivial
> Attachments: HDFS-5802.001.patch, HDFS-5802.002.patch
>
>
> This came up during the discussion on a forum at
> http://community.cloudera.com/t5/Batch-Processing-and-Workflow/Permission-denied-access-EXECUTE-on-getting-the-status-of-a-file/m-p/5049#M162
> surrounding an fs.exists(…) check running on a path /foo/bar, where /foo is
> a file and not a directory.
> In such a case, NameNode yields a user-confusing message of {{Permission
> denied: user=foo, access=EXECUTE, inode="/foo":foo:foo:-rw-r--r--}} instead
> of clearly saying (and realising) "/foo is not a directory" or "/foo is a
> file" before it tries to traverse further down to locate the requested path.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)