dmvk commented on code in PR #22169:
URL: https://github.com/apache/flink/pull/22169#discussion_r1140223431
##########
flink-runtime/src/main/java/org/apache/flink/runtime/scheduler/adaptive/AdaptiveScheduler.java:
##########
@@ -1213,4 +1268,17 @@ <T extends State> T transitionToState(StateFactory<T>
targetState) {
State getState() {
return state;
}
+
+ /**
+ * Check for slots that are idle for more than {@link
JobManagerOptions#SLOT_IDLE_TIMEOUT} and
+ * release them back to the ResourceManager.
+ */
+ private void checkIdleSlotTimeout() {
+ declarativeSlotPool.releaseIdleSlots(System.currentTimeMillis());
+ getMainThreadExecutor()
+ .schedule(
+ this::checkIdleSlotTimeout,
Review Comment:
> Could you explain why this method is necessary -don't we release the
excessive slots in CreatingExecutionGraph? What is the scenario?
We mark the slots as idle with the current timestamp and still need to keep
them around until `current timestamp + slot idle timeout`; it's up to the slot
pool to decide when slots should be physically released
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]