[ https://issues.apache.org/jira/browse/HDFS-13170?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16386867#comment-16386867 ]
Stephen O'Donnell commented on HDFS-13170: ------------------------------------------ [~xiaochen] Thanks for the review. * Syntax of the if statement - I agree I have changed it to your suggestion. I kind of coped this from the webhdfs code which was a bit lazy of me! * Double line break - this should be fixed. * Audit log changes - OK, I have moved the new part to the end. * For the check style warnings, I think the formatting of the original code is broken, and if I fix those 3 lines highlighted it would not be correct in the current formatting. Eg check line 582 in HttpFSServer.java - it aligns perfectly with the rest of the code block, but if I obey the checkstyle rules (it wants me to remove two spaces) it will not be indented correctly with the exiting code. The other two lines are the same. I can fix it, but I feel it would make things worse - what do you think? I will upload v3 of the patch for review now. > Port webhdfs unmaskedpermission parameter to HTTPFS > --------------------------------------------------- > > Key: HDFS-13170 > URL: https://issues.apache.org/jira/browse/HDFS-13170 > Project: Hadoop HDFS > Issue Type: Improvement > Affects Versions: 3.0.0-alpha2 > Reporter: Stephen O'Donnell > Assignee: Stephen O'Donnell > Priority: Major > Attachments: HDFS-13170.001.patch, HDFS-13170.002.patch > > > HDFS-6962 fixed a long standing issue where default ACLs are not correctly > applied to files when they are created from the hadoop shell. > With this change, if you create a file with default ACLs against the parent > directory, with dfs.namenode.posix.acl.inheritance.enabled=false, the result > is: > {code} > # file: /test_acl/file_from_shell_off > # owner: user1 > # group: supergroup > user::rw- > user:user1:rwx #effective:r-- > user:user2:rwx #effective:r-- > group::r-x #effective:r-- > group:users:rwx #effective:r-- > mask::r-- > other::r-- > {code} > And if you enable this, to fix the bug above, the result is as you would > expect: > {code} > # file: /test_acl/file_from_shell > # owner: user1 > # group: supergroup > user::rw- > user:user1:rwx #effective:rw- > user:user2:rwx #effective:rw- > group::r-x #effective:r-- > group:users:rwx #effective:rw- > mask::rw- > other::r-- > {code} > If I then create a file over HTTPFS or webHDFS, the behaviour is not the same > as above: > {code} > # file: /test_acl/default_permissions > # owner: user1 > # group: supergroup > user::rwx > user:user1:rwx #effective:r-x > user:user2:rwx #effective:r-x > group::r-x > group:users:rwx #effective:r-x > mask::r-x > other::r-x > {code} > Notice the mask is set to r-x and this remove the write permission on the new > file. > As part of HDFS-6962 a new parameter was added to webhdfs > 'unmaskedpermission'. By passing it to a webhdfs call, it can result in the > same behaviour as when a file is written from the CLI: > {code} > curl -i -X PUT -T test.txt --header "Content-Type:application/octet-stream" > "http://namenode:50075/webhdfs/v1/test_acl/unmasked__770?op=CREATE&user.name=user1&namenoderpcaddress=namenode:8020&overwrite=false&unmaskedpermission=770" > # file: /test_acl/unmasked__770 > # owner: user1 > # group: supergroup > user::rwx > user:user1:rwx > user:user2:rwx > group::r-x > group:users:rwx > mask::rwx > other::--- > {code} > However, this parameter was never ported to HTTPFS. > This Jira is to replicate the same changes to HTTPFS so this parameter is > available there too. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org