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

FairScheduler: queue's usedResource is always more than the maxResource limit

    XMLWordPrintableJSON

Details

    Description

      When submitting spark application(both spark-on-yarn-cluster and spark-on-yarn-cleint model), the queue's usedResources assigned by fairscheduler always can be more than the queue's maxResources limit.
      And by reading codes of fairscheduler, I suppose this issue happened because of ignore to check the request resources when assign Container.
      Here is the detail:
      1. choose a queue. In this process, it will check if queue's usedResource is bigger than its max, with assignContainerPreCheck.
      2. then choose a app in the certain queue.
      3. then choose a container. And here is the question, there is no check whether this container would make the queue sources over its max limit. If a queue's usedResource is 13G, the maxResource limit is 16G, then a container which asking for 4G resources may be assigned successful.

      This problem will always happen in spark application, cause we can ask for different container resources in different applications.
      By the way, I have already use the patch from YARN-2083.

      Attachments

        1. resourcelimit.patch
          4 kB
          Xia Hu
        2. resourcelimit-02.patch
          4 kB
          Xia Hu
        3. resourcelimit-test.patch
          3 kB
          Xia Hu

        Issue Links

          Activity

            People

              yufeigu Yufei Gu
              Xia Hu Xia Hu
              Votes:
              2 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: