HDFS ignores group of a user when creating a file or a directory, and instead
inherits
--------------------------------------------------------------------------------------
Key: HDFS-3074
URL: https://issues.apache.org/jira/browse/HDFS-3074
Project: Hadoop HDFS
Issue Type: Bug
Components: name-node
Affects Versions: 0.23.1
Reporter: Harsh J
Priority: Minor
When creating a file or making a directory on HDFS, the namesystem calls pass
{{null}} for the group name, thereby having the parent directory permissions
inherited onto the file.
This is not how the Linux FS works at least.
For instance, if I have today a user 'foo' with default group 'foo', and I have
my HDFS home dir created as "foo:foo" by the HDFS admin, all files I create
under my directory too will have "foo" as group unless I chgrp them myself.
This makes sense.
Now, if my admin were to change my local accounts' default/primary group to
'bar' (but did not change so, and I were to continue writing files to my home
directory (or any subdirectory that has 'foo' as group), all files still get
created with group 'foo' - as if the NN has not realized the primary group has
changed.
On linux this is the opposite. My login session's current primary group is what
determines the default group on my created files and directories, not the
parent dir owner.
If the create and mkdirs call passed UGI's group info
(UserGroupInformation.getCurrentUser().getGroupNames()[0] should give primary
group?) along into their calls instead of a null in the PermissionsStatus
object, perhaps this can be avoided.
Or should we leave this as-is, and instead state that if admins wish their
default groups of users to change, they'd have to chgrp all the directories
themselves?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira