Uploaded image for project: 'Hadoop YARN'
  1. Hadoop YARN
  2. YARN-7274

Ability to disable elasticity at leaf queue level

    XMLWordPrintableJSON

Details

    • Reviewed

    Description

      The documentation defines yarn.scheduler.capacity.<queue-path>.maximum-capacity as "Maximum queue capacity in percentage (%) as a float. This limits the elasticity for applications in the queue. Defaults to -1 which disables it."

      However, setting this value to -1 sets maximum capacity to 100% but I thought (perhaps incorrectly) that the intention of the -1 setting is that it would disable elasticity. This is confirmed looking at the code:

      public static final float MAXIMUM_CAPACITY_VALUE = 100;
      public static final float DEFAULT_MAXIMUM_CAPACITY_VALUE = -1.0f;
      ......
      maxCapacity = (maxCapacity == DEFAULT_MAXIMUM_CAPACITY_VALUE) ? 
      MAXIMUM_CAPACITY_VALUE : maxCapacity;
      

      The sum of yarn.scheduler.capacity.<queue-path>.capacity for all queues, at each level, must be equal to 100 but for yarn.scheduler.capacity.<queue-path>.maximum-capacity this value is actually a percentage of the entire cluster not just the parent queue. Yet it can not be set lower then the leaf queue's capacity setting. This seems to make it impossible to disable elasticity at a leaf queue level.

      This improvement is proposing that YARN have the ability to have elasticity disabled at a leaf queue level even if a parent queue permits elasticity by having a yarn.scheduler.capacity.<queue-path>.maximum-capacity greater then it's yarn.scheduler.capacity.<queue-path>.capacity

      Attachments

        1. YARN-7274.2.patch
          19 kB
          Zian Chen
        2. YARN-7274.wip.1.patch
          11 kB
          Zian Chen

        Activity

          People

            Zian Chen Zian Chen
            sbrokaw Scott Brokaw
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: