[ 
https://issues.apache.org/jira/browse/HDDS-16209?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sammi Chen updated HDDS-16209:
------------------------------
    Summary: KeyLifecycleService leaks inFlight entry when a task runs while 
shouldRun() is false  (was: KeyLifecycleService leaks inFlight entry, 
permanently blocking the bucket)

> KeyLifecycleService leaks inFlight entry when a task runs while shouldRun() 
> is false
> ------------------------------------------------------------------------------------
>
>                 Key: HDDS-16209
>                 URL: https://issues.apache.org/jira/browse/HDDS-16209
>             Project: Apache Ozone
>          Issue Type: Sub-task
>          Components: OM
>    Affects Versions: 2.3.0
>            Reporter: Sergey Soldatov
>            Assignee: Sergey Soldatov
>            Priority: Major
>              Labels: pull-request-available
>
> When a KeyLifecycleService task is scheduled for a bucket, the bucket is 
> marked as "in flight" so it is not scheduled twice. The mark is only cleared 
> when the task actually runs its work, but if the task starts while the 
> service cannot run at that moment (the service was just suspended or 
> disabled, or the OM is not yet leader), the task exits early and the mark is 
> never cleared. After that the service considers the bucket permanently busy 
> and skips it on every scheduling round, so lifecycle rules for that bucket 
> silently stop working until the OM is restarted. This can happen in 
> production after a leader change or a suspend/resume of the service, and it 
> also causes flaky timeouts in TestKeyLifecycleService. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to