Uploaded image for project: 'Hadoop Common'
  1. Hadoop Common
  2. HADOOP-7064

FsShell does not properly check permissions of files in a directory when doing rmr

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 0.20.2
    • Fix Version/s: None
    • Component/s: fs
    • Labels:
      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

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                alangates Alan Gates
              • Votes:
                0 Vote for this issue
                Watchers:
                11 Start watching this issue

                Dates

                • Created:
                  Updated: