Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
0.20.2
-
None
-
None
Description
In POSIX file semantics, the ability to remove an entry a file is determined by whether the user has write permissions on the directory containing the file. However, to delete recursively (rm -r) the user must have write permissions in all directories being removed. Thus if you have a directory structure like /a/b/c and a user has write permissions on a but not on b, then he is not allowed to do 'rm -r b'. This is because he does not have permissions to remove c, so the rm of b fails, even though he has permission to remove b.
However, 'hadoop fs -rmr b' removes both b and c in this case. It should instead fail and return an error message saying the user does not have permission to remove c. 'hadoop fs -rmr c' correctly fails.
Attachments
Issue Links
- relates to
-
HDFS-8312 Trash does not descent into child directories to check for permissions
- Resolved