Uploaded image for project: 'Hadoop HDFS'
  1. Hadoop HDFS
  2. HDFS-14815

RBF: Update the quota in MountTable when calling setQuota on a MountTable src.

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.3.0
    • Component/s: None
    • Labels:
      None
    • Hadoop Flags:
      Reviewed

      Description

      The method setQuota() can make the remote quota(the quota on real clusters) inconsistent with the MountTable. I think we have 3 ways to fix it:

      1. Reject all the setQuota() rpcs if it trys to change the quota of a mount table.
      2. Let setQuota() to change the mount table quota. Update the quota on zk first and then update remote quotas.
      3. Do nothing. The RouterQuotaUpdateService will finally make all the remote quota right. We can tolerate short-term inconsistencies.

      I'd like option 1 because I want the RouterAdmin to be the only entrance to update the MountTable.

      Option 3 we don't need change anything, but the quota will be inconsistent for a short-term. The remote quota will be effective immediately and auto-changed back after a while. User might be confused about the behavior.

       

        Attachments

        1. HDFS-14815.001.patch
          9 kB
          Jinglun
        2. HDFS-14815.002.patch
          10 kB
          Jinglun
        3. HDFS-14815.003.patch
          10 kB
          Jinglun
        4. HDFS-14815.004.patch
          11 kB
          Jinglun
        5. HDFS-14815.005.patch
          11 kB
          Jinglun

          Issue Links

            Activity

              People

              • Assignee:
                LiJinglun Jinglun
                Reporter:
                LiJinglun Jinglun
              • Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: