Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-18512

Region Server will abort with IllegalStateException if HDFS umask has limited scope

    XMLWordPrintableJSON

Details

    • Reviewed

    Description

      If HDFS umask (fs.permissions.umask-mode) has limited scope say 077 then file/dir permission will not be wider than 700. HDFS client has to set permission explicitly if required.

      During SecureBulkLoadEndpoint CP start, RegionServer creates (if not exist) the staging directory with the specified permission and later throws IllegalStateException if staging directory permission is not set to 711.
      After HBASE-17861, we are setting staging dir permission explicitly only when it exist. In case of fresh cluster startup staging dir permission wont be 711 when umask defined as 077 which cause RS to abort.

      2017-07-30 14:26:33,350 | ERROR | B.defaultRpcServer.handler=12,queue=2,port=21300 | Region server HOSTNAME,PORT,XXXXXXXXX reported a fatal error:
      ABORTING region server HOSTNAME,PORT,XXXXXXXXX: The coprocessor org.apache.hadoop.hbase.security.access.SecureBulkLoadEndpoint threw java.lang.IllegalStateException: Staging directory of /user/HBase/hbase-staging already exists but permissions aren't set to '-rwx--x--x' 
      Cause:
      java.lang.IllegalStateException: Staging directory of /user/root/hbase-staging already exists but permissions aren't set to '-rwx--x--x' 
      

      We should set permission explicitly to 711 after staging directory creation.

      Attachments

        1. HBASE-18512-branch-1.patch
          2 kB
          Pankaj Kumar

        Activity

          People

            pankaj2461 Pankaj Kumar
            pankaj2461 Pankaj Kumar
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: