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

ASF GitHub Bot updated HDDS-15291:
----------------------------------
    Labels: pull-request-available  (was: )

> DN should fail unreferenced block deletion on file errors
> ---------------------------------------------------------
>
>                 Key: HDDS-15291
>                 URL: https://issues.apache.org/jira/browse/HDDS-15291
>             Project: Apache Ozone
>          Issue Type: Improvement
>          Components: Ozone Datanode
>            Reporter: Shilun Fan
>            Assignee: Shilun Fan
>            Priority: Major
>              Labels: pull-request-available
>
> Datanode may silently ignore failures while cleaning up unreferenced 
> block/chunk files during block deletion.
> In KeyValueHandler.deleteUnreferenced, the current implementation lists chunk 
> files by prefix and deletes matching files with FileUtil.fullyDelete(file).
> However, it does not handle two failure cases explicitly:
>  * File.list(...) may return null if the chunk directory cannot be listed.
>  * FileUtil.fullyDelete(file) returns false when deletion fails, but the 
> result is currently ignored.
> As a result, DN may log that an unreferenced chunk/block was deleted even 
> when the file deletion actually failed. This can make cleanup failures harder 
> to detect and may leave stale unreferenced files on disk.
> The proposed fix is to make deleteUnreferenced fail explicitly by throwing 
> IOException when the chunk directory cannot be listed or when file deletion 
> fails, and only log successful deletion after the file is actually removed.
>  



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