hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chris Nauroth (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HDFS-5594) FileSystem API for ACLs.
Date Mon, 09 Dec 2013 19:30:09 GMT

    [ https://issues.apache.org/jira/browse/HDFS-5594?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13843445#comment-13843445

Chris Nauroth commented on HDFS-5594:

Thanks for taking a look, Haohui.

bq. Why Acl#entries is a set? I'm wondering whether it should be ordered.

I chose set rather than something else like list, because the entries are unique.  However,
looking at this again, I think I've got it wrong.  The entries ought to be unique on scope+type+name
and the ACL ought to disallow associating that key with different permission settings.  By
including the perms in {{AclEntry#equals}} and {{AclEntry#hashCode}}, I haven't achieved that.
 I'm thinking of changing the set to something like {{Map<AclEntry.Key, FsAction>}}
to better represent the unique constraint.  Let me know if you agree, and I'll make the change.

The natural ordering for entries within an ACL is: 1) owner, 2) all named user entries (internal
ordering undefined), 3) owning group, 4) all named group entries (internal ordering undefined),
5) other.  This is the ordering that will be required when we implement the enforcement logic.
 I was planning on putting that ordering logic on the NameNode side, but I could also do it
here on the model side in a {{AclEntry#Key#compareTo}} method if you prefer.  I'll include
that version in the next patch.

I can switch to the Guava equivalents for {{equals}} and {{hashCode}}.

> FileSystem API for ACLs.
> ------------------------
>                 Key: HDFS-5594
>                 URL: https://issues.apache.org/jira/browse/HDFS-5594
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: hdfs-client
>    Affects Versions: HDFS ACLs (HDFS-4685)
>            Reporter: Chris Nauroth
>            Assignee: Chris Nauroth
>         Attachments: HDFS-5594.1.patch, HDFS-5594.2.patch, HDFS-5594.3.patch
> Add new methods to {{FileSystem}} for manipulating ACLs.

This message was sent by Atlassian JIRA

View raw message