[
https://issues.apache.org/jira/browse/HDFS-10488?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15316976#comment-15316976
]
Wei-Chiu Chuang commented on HDFS-10488:
----------------------------------------
Hi [~wchevreuil] thanks for the great finding and the patch.
The fix itself looks good to me in general and I just have 1 question about the
fix and some quick comments regarding the test:
Regarding the fix:
I am a little confused by the following line: seems you always call
getDirFsPermission() regardless whether it's a dir or file?
{code}
np.setPermission(fullpath, permission.getDirFsPermission());
{code}
# The convention of HDFS unit testing is to start a MiniDFSCluster using
{{@Before}} annotation, and tear down the cluster using {{@After}}. You can
take a look at other HDFS test files for reference.
# Would you mind to add additional tests to verify it works as expected if the
mask {{fs.permissions.umask-mode}} is set differently? This will be helpful in
detecting other webhfs permission bugs if they exist.
# You have fixed the WebHDFS CREATESYMLINK operation. Could you also add tests
to verify this operation as well?
> WebHDFS CREATE and MKDIRS does not follow same rules as DFS CLI when creating
> files/directories without specifying permissions
> ------------------------------------------------------------------------------------------------------------------------------
>
> Key: HDFS-10488
> URL: https://issues.apache.org/jira/browse/HDFS-10488
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: webhdfs
> Affects Versions: 2.6.0
> Reporter: Wellington Chevreuil
> Priority: Minor
> Attachments: HDFS-10488.002.patch, HDFS-10488.003.patch,
> HDFS-10488.patch
>
>
> WebHDFS methods for creating file/directories are always creating it with 755
> permissions as default, even ignoring any configured
> *fs.permissions.umask-mode* in the case of directories.
> Dfs CLI, however, applies the configured umask to 777 permission for
> directories, or 666 permission for files.
> Example below shows the different behaviour when creating directory via CLI
> and WebHDFS:
> {noformat}
> 1) Creating a directory under '/test/' as 'test-user'. Configured
> fs.permissions.umask-mode is 000:
> $ sudo -u test-user hdfs dfs -mkdir /test/test-user1
> $ sudo -u test-user hdfs dfs -getfacl /test/test-user1
> # file: /test/test-user1
> # owner: test-user
> # group: supergroup
> user::rwx
> group::rwx
> other::rwx
> 4) Doing the same via WebHDFS does not get the proper ACLs:
> $ curl -i -X PUT
> "http://namenode-host:50070/webhdfs/v1/test/test-user2?user.name=test-user&op=MKDIRS"
>
> $ sudo -u test-user hdfs dfs -getfacl /test/test-user2
> # file: /test/test-user2
> # owner: test-user
> # group: supergroup
> user::rwx
> group::r-x
> other::r-x
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]