[
https://issues.apache.org/jira/browse/FLINK-31080?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17717472#comment-17717472
]
Samrat Deb edited comment on FLINK-31080 at 4/28/23 6:29 AM:
-------------------------------------------------------------
> Sure, but I'm leaning toward unifying the clocks between {{SlotPoolService}}
>and {{{}Scheduler{}}}, like Weihua said. What do you think?
Yes ! completely agree with [~huwh] . Allow me sometime to come up with the
patch changes unifying the clock between {{SlotPoolService}} and {{Scheduler. }}
On high level , I am thinking to introduce `ClockService` class that will be
shared by both SlotPoolService and Scheduler.
Please enlighten if you see any risk or component breaking [~Weijie Guo]
[~huwh]
was (Author: samrat007):
> Sure, but I'm leaning toward unifying the clocks between {{SlotPoolService}}
>and {{{}Scheduler{}}}, like Weihua said. What do you think?
Yes ! completely agree with [~huwh] . Allow me sometime to come up with the
patch changes unifying the clock between {{SlotPoolService}} and {{Scheduler. }}
On high level , I am thinking to introduce `ClockService` class that will be
shared by both SlotPoolService and Scheduler.
Please enlighten if you see any risk or componet breaking [~Weijie Guo]
[~huwh]
> Idle slots are not released due to a mismatch in time between
> DeclarativeSlotPoolService and SlotSharingSlotAllocator
> ---------------------------------------------------------------------------------------------------------------------
>
> Key: FLINK-31080
> URL: https://issues.apache.org/jira/browse/FLINK-31080
> Project: Flink
> Issue Type: Bug
> Affects Versions: 1.17.0, 1.16.1
> Reporter: Prabhu Joseph
> Assignee: Weijie Guo
> Priority: Major
> Labels: pull-request-available
>
> Due to a timing mismatch between {{DeclarativeSlotPoolService}} and
> {{{}SlotSharingSlotAllocator{}}}, idle slots are not released.
> {{DeclarativeSlotPoolService}} uses {{{}SystemClock#relativeTimeMillis{}}},
> i.e., {{{}System.nanoTime{}}}() / 1_000_000, while offering a slot, whereas
> {{SlotSharingSlotAllocator}} uses {{{}System.currentTimeMillis{}}}() while
> freeing the reserved slot.
> The idle timeout check fails wrongly as "{{{}System.currentTimeMillis(){}}}"
> will have a very high value compared to
> "{{{}SystemClock#relativeTimeMillis{}}}".
--
This message was sent by Atlassian Jira
(v8.20.10#820010)