[
https://issues.apache.org/jira/browse/FLINK-41059?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated FLINK-41059:
-----------------------------------
Labels: pull-request-available (was: )
> FineGrainedSlotManager schedules requirement checks into the main thread
> after suspend()
> ----------------------------------------------------------------------------------------
>
> Key: FLINK-41059
> URL: https://issues.apache.org/jira/browse/FLINK-41059
> Project: Flink
> Issue Type: Technical Debt
> Components: Runtime / Coordination
> Affects Versions: 2.4.0
> Reporter: Martijn Visser
> Assignee: Martijn Visser
> Priority: Major
> Labels: pull-request-available
>
> When {{suspend()}} is called, the one-shot check that
> {{FineGrainedSlotManager#checkResourceRequirementsWithDelay}} scheduled on
> the RPC service's scheduled executor is never cancelled and still calls
> {{mainThreadExecutor.execute}} when the delay fires. The check returns on
> {{!started}}, and in the ResourceManager the main thread executor is the RPC
> gateway, so a late check only ends as a dead letter. Chesnay described this
> in
> https://issues.apache.org/jira/browse/FLINK-34427?focusedCommentId=17816969&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-17816969.
> The fork crash on that ticket has a different cause, the test harness
> shutting its executor down under a running check, and is fixed by
> https://github.com/apache/flink/pull/29533.
> {{suspend()}} should cancel the pending check, complete or clear
> {{requirementsCheckFuture}} so that a later {{start()}} can schedule again,
> and not schedule into the main thread once the slot manager is no longer
> started.
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)