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

Suresh Srinivas commented on HDFS-7568:
---------------------------------------

h3. Feature overview
This feature adds support for marking a directory as immutable. There are two 
types of immutability supported:

*Immutable*
A directory can be marked as immutable by either the admin or user who owns the 
directory. After this no write operations are permitted on that directory or 
files under it as listed below:
* Creation of new files and directories
* Rename
* Delete
* Change ownership, ACLs and permissions 
* Append
* concat
* Changing the snapshottability, create new snapshot or other snapshot changes 
(delete, rename existing snapshots)
* Setting or removing extended attributes
* Symlink operations

*Immutable with append*
A directory can be marked as immutable by either the admin or user who owns the 
directory. After this only new file/directory creation or appending to existing 
files is allowed. All other write operations are not permitted on that 
directory or files under it as listed below:
* Rename
* Delete
* Change ownership, ACLs and permissions 
* concat {color:red} For now disallowing this. Needs further discussion. {color}
* Changing the snapshottability, create new snapshot or other snapshot changes 
(delete, rename existing snapshots)
* Setting or removing extended attributes
* Symlink operations
 
Administrator or owner of the directory can change immutability of directory to 
off to make it a regular directory.

h3. Command line
{noformat}
hadoop dfs -setImmutable [-append | -off ]
{noformat}

h3. File system change:
New methods will be added to FileSystem as follows:
{code}
FileSystem#setImmutable(ImmutableOpts )
ImmutableOpts FileSystem#getImmutable()
{code}

h3. High level implementation details
Based on immutability type, the corresponding write operations are denied. 
{{ImmutableException}} which is subclass of {{AccessDeniedException}} will be 
thrown from the operations. Immutability type is stored as INode#Feature in the 
inode.


> Support immutability (Write-once-read-many) in HDFS
> ---------------------------------------------------
>
>                 Key: HDFS-7568
>                 URL: https://issues.apache.org/jira/browse/HDFS-7568
>             Project: Hadoop HDFS
>          Issue Type: New Feature
>          Components: namenode
>    Affects Versions: 2.7.0
>            Reporter: Suresh Srinivas
>            Assignee: Suresh Srinivas
>
> Many regulatory compliance requires storage to support WORM functionality to 
> protect sensitive data from being modified or deleted. This jira proposes 
> adding that feature to HDFS.
> See the following comment for more description.



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

Reply via email to