[ 
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)

Reply via email to