hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Haohui Mai (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HDFS-5933) Optimize the FSImage layout for ACLs
Date Wed, 12 Feb 2014 00:56:20 GMT

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

Haohui Mai updated HDFS-5933:
-----------------------------

    Description: 
The current serialization of the ACLs is suboptimal. ACL entries should be serialized using
the same scheme that the PB-based FSImage serializes permissions.
    
     * An ACL entry is represented by a 32-bit integer in Big Endian
     * format. The bits can be divided in four segments:
     * [0:2) || [2:26) || [26:27) || [27:29) || [29:32)
     *
     * [0:2) -- reserved for futute uses.
     * [2:26) -- the name of the entry, which is an ID that points to a
     * string in the StringTableSection.
     * [26:27) -- the scope of the entry (AclEntryScopeProto)
     * [27:29) -- the type of the entry (AclEntryTypeProto)
     * [29:32) -- the permission of the entry (FsActionProto)
     *
     */

  was:
The current serialization of the ACLs is suboptimal. ACL entries should be serialized using
the same scheme that the PB-based FSImage serializes permissions.

The entry is represented by an 64-bit bit-vector, which is
{code}
[reserved[0:21)][name[21:45)][type[45:47)][scope[47:48)][permissions[48:64)]
{code}

{{name}} is a 24-bit ID that points to a string in {{StringTable}}. {{type}}, {{scope}}, {{permissions}}
are the corresponding fields in an AclEntry. Bits in {{reserved}} are reserved for future
uses.


> Optimize the FSImage layout for ACLs
> ------------------------------------
>
>                 Key: HDFS-5933
>                 URL: https://issues.apache.org/jira/browse/HDFS-5933
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: hdfs-client, namenode, security
>    Affects Versions: HDFS ACLs (HDFS-4685)
>            Reporter: Haohui Mai
>            Assignee: Haohui Mai
>         Attachments: HDFS-5933.000.patch, HDFS-5933.001.patch
>
>
> The current serialization of the ACLs is suboptimal. ACL entries should be serialized
using the same scheme that the PB-based FSImage serializes permissions.
>     
>      * An ACL entry is represented by a 32-bit integer in Big Endian
>      * format. The bits can be divided in four segments:
>      * [0:2) || [2:26) || [26:27) || [27:29) || [29:32)
>      *
>      * [0:2) -- reserved for futute uses.
>      * [2:26) -- the name of the entry, which is an ID that points to a
>      * string in the StringTableSection.
>      * [26:27) -- the scope of the entry (AclEntryScopeProto)
>      * [27:29) -- the type of the entry (AclEntryTypeProto)
>      * [29:32) -- the permission of the entry (FsActionProto)
>      *
>      */



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Mime
View raw message