Aryan Gupta created HDDS-16162:
----------------------------------

             Summary: KeyLifecycleService should retry failed move-to-trash 
entries without advancing scan state
                 Key: HDDS-16162
                 URL: https://issues.apache.org/jira/browse/HDDS-16162
             Project: Apache Ozone
          Issue Type: Improvement
            Reporter: Aryan Gupta
            Assignee: Aryan Gupta


When lifecycle expiration is configured to move expired keys to trash, 
{{KeyLifecycleService}} currently clears the pending key list even if 
{{moveToTrash}} fails. It can then save lifecycle scan state past those keys, 
so the failed keys are not retried until a later full scan.

We should avoid marking failed trash moves as processed. If moving expired keys 
or directories to trash fails, the lifecycle task should fail for that bucket 
without saving scan state past the failed entries. The next lifecycle run can 
then retry them from the previous scan position.
h2. Benefits
 * Preserves trash semantics: keys are not directly deleted when trash move 
fails.
 * Prevents lifecycle from silently skipping expired keys.
 * Retries failed keys sooner, instead of waiting for a full bucket scan to 
complete.
 * Keeps scan state accurate: only successfully handled entries are marked as 
progress.



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