[
https://issues.apache.org/jira/browse/FLINK-20748?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17255864#comment-17255864
]
Nicholas Jiang commented on FLINK-20748:
----------------------------------------
[~chesnay], IMO, DeclarativeSlotPool could add onSlotChanged method to handle
the condition that the requirements change or a slot is freed. Whenever calling
onSlotChanged method, the slotToRequirementProfileMappings should be Remap.
What do you think about?
> Remap excess slots to outstanding requirements
> ----------------------------------------------
>
> Key: FLINK-20748
> URL: https://issues.apache.org/jira/browse/FLINK-20748
> Project: Flink
> Issue Type: Improvement
> Components: Runtime / Coordination
> Affects Versions: 1.13.0
> Reporter: Chesnay Schepler
> Priority: Major
> Fix For: 1.13.0
>
>
> The {{DeclarativeSlotPool}} maintains a mapping of slots to requirements that
> they fulfill. This mapping is currently determined when the slot is offered
> to the pool, and is only modified if the scheduler reserves this slot for a
> different requirement.
> This currently implies 2 things:
> * a slot can be prematurely released, although it could fulfill a different
> outstanding requirement
> * a new slot could be requested, despite there being another slot around
> that could fulfill the requirement
> We should remedy this by checking whether excess slots can be re-mapped to a
> different requirement, whenever the requirements change or a slot is freed.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)