hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Steve Loughran (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-14820) Fix for HDFS semantics parity for mkdirs -p
Date Thu, 31 Aug 2017 11:48:07 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-14820?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16148868#comment-16148868
] 

Steve Loughran commented on HADOOP-14820:
-----------------------------------------

Looks pretty good

checkstyle: don't worry about the "magic number in tests" one, as it's clearly a false alarm,
but the one in src/main is trivial to fix

The new test is comparing against /, as far as I can see. Looking at this & the existing
checks, I don't see any which try to play with permissions and directories partway up the
tree other than /

{code}
Path path1 = "/path1"
fs.mkdir(path1)
make-read-only(path1)

// immediate child to fail
LambdaTestUtils.intercept(WasbAuthorizationException.class,
 () -> fs.mkdir(new Path(path1, "/path2"));      // implement as a Callable<Boolean>
for Java 7

// grandchild to fail 
LambdaTestUtils.intercept(WasbAuthorizationException.class,
 () -> fs.mkdir(new Path(path1, "/path2/path3"));
{code}

>  Fix for HDFS semantics parity for mkdirs -p
> --------------------------------------------
>
>                 Key: HADOOP-14820
>                 URL: https://issues.apache.org/jira/browse/HADOOP-14820
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: fs/azure
>            Reporter: Sivaguru Sankaridurg
>            Assignee: Sivaguru Sankaridurg
>              Labels: azure, fs, secure, wasb
>         Attachments: HADOOP-14820.001.patch, HADOOP-14820.002.patch, HADOOP-14820.003.patch
>
>
> No authorization checks should be made when a user tries to create (mkdirs -p) an existing
folder hierarchy.
> For example, if we start with _/home/hdiuser/prefix_ pre-created, and do the following
operations, the results should be as shown below.
> {noformat}
> hdiuser@hn0-0d2f67:~$ sudo chown root:root prefix
> hdiuser@hn0-0d2f67:~$ sudo chmod 555 prefix
> hdiuser@hn0-0d2f67:~$ ls -l
> dr-xr-xr-x 3 root    root      4096 Aug 29 08:25 prefix
> hdiuser@hn0-0d2f67:~$ mkdir -p /home
> hdiuser@hn0-0d2f67:~$ mkdir -p /home/hdiuser
> hdiuser@hn0-0d2f67:~$ mkdir -p /home/hdiuser/prefix
> hdiuser@hn0-0d2f67:~$ mkdir -p /home/hdiuser/prefix/1
> mkdir: cannot create directory â/home/hdiuser/prefix/1â: Permission denied
> The first three mkdirs succeed, because the ancestor is already present. The fourth one
fails because of a permission check against the (shorter) ancestor (as compared to the path
being created).
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

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


Mime
View raw message