Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Discussion threadhttps://lists.apache.org/thread/ocssfxglpc8z7cto3k8p44mrjxwr67r9
Vote thread
JIRA

Jira
serverASF JIRA
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keyFLINK-31439

Release


Please keep the discussion on the mailing list rather than commenting on the wiki (wiki discussions get unwieldy fast).

...

  • Introduce redundantTaskManagerNum to DefaultResourceAllocationStrategy

  • Invoke tryFulFillRedundantResourceProfiles at the end of tryFulfillRequirements. it should use the remaining registeredResources and pendingFreeResources to fulfill the redundant slot requirements(defaultSlotResourceProfile * redundantTaskManagerNum * numSlotsPerWorker) and try to add new PendingTaskManagers to resultBuilder if the resource is not enough.

    Code Block
    languagejava
    linenumberstrue
    tryFulFillRedundantResourceProfiles(
           Collection<InternalResourceInfo> registeredResources,
           List<InternalResourceInfo> pendingFreeResources,
           ResourceAllocationResult.Builder resultBuilder){}


Split resource allocate/release related logic from FineGrainedSlotManager to TaskManagerTracker

Currently the FineGrainedSlotManager is response to slots allocations and resources request/release. This makes logical of FineGrainedSlotManager complicated, So we will move task manager related work from FineGrainedSlotManager to TaskManagerTracker, which already tracks task managers but not including request/release.

After this change, the TaskManagerTracker will manage all the behavior of TaskManager:

  • request new task manager
  • tracking pending task manager
  • tracking registered task manager
  • release idle task manager
  • deal with max resources limitation

Try reclaim inactive slots when job terminated

...