[ 
https://issues.apache.org/jira/browse/AMBARI-11351?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Shantanu Mundkur updated AMBARI-11351:
--------------------------------------
    Attachment: AMBARI-11351.patch

> HdfsResource does not account for sticky bit
> --------------------------------------------
>
>                 Key: AMBARI-11351
>                 URL: https://issues.apache.org/jira/browse/AMBARI-11351
>             Project: Ambari
>          Issue Type: Bug
>          Components: contrib
>    Affects Versions: Ambari-2.1
>         Environment: Linux
>            Reporter: Shantanu Mundkur
>            Assignee: Shantanu Mundkur
>              Labels: patch
>             Fix For: Ambari-2.1
>
>         Attachments: AMBARI-11351.patch
>
>
> Specifying a mode of 01777 will result in an exception like:
> Exception in thread "main" java.lang.IllegalArgumentException: 1777
> at 
> org.apache.hadoop.fs.permission.PermissionParser.<init>(PermissionParser.java:60)
> at org.apache.hadoop.fs.permission.UmaskParser.<init>(UmaskParser.java:42)
> at org.apache.hadoop.fs.permission.FsPermission.<init>(FsPermission.java:106)
> at org.apache.ambari.fast_hdfs_resource.Resource.setMode(Resource.java:217)
> at org.apache.ambari.fast_hdfs_resource.Runner.main(Runner.java:78)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:606)
> at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
> at org.apache.hadoop.util.RunJar.main(RunJar.java:136)
> In fast_hdfs_resource, setMode is used to set the permissions on the Resource 
> object using the specified mode. Passing in the mode as a string for 
> FsPermission is what results in the problem because the constructor that is 
> used with string as argument uses the UmaskParser. Umask values are slightly 
> different from standard modes as they cannot specify t (sticky bit) or X.
> Passing in the argument as a short is probably what is needed here to enable 
> using the FsPermission code that accounts for the sticky bit.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to