XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • None
    • 1.13.0
    • Runtime / Coordination
    • None

    Description

      The JobScopedResourceTracker tracks acquired resources that exceed the jobs requirements as excess resources.

      Whenever the requirements increase, or a (non-excess) resource was lost, we try to assign any excess resources we have to fill either fulfill the requirements of fill in the lost resource.

      This re-assignment is currently implemented by doing a full copy of map containing the excess resources, and going through the usual code path for acquired resources.

      This is fine in terms of correctness (although it can cause misleading log messages), but in the worst case, where we cannot re-assign any excess resources, we not only rebuild the original map in the process, but also potentially iterate over every outstanding requirement for every excess slot.

      We should optimize this step by iterating over the excess resource map once, removing items on-demand and aborting early for a given excess resource profile if no matching requirement could be found.

      Attachments

        Activity

          People

            chesnay Chesnay Schepler
            chesnay Chesnay Schepler
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: