You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ozone.apache.org by "Rishabh Patel (Jira)" <ji...@apache.org> on 2025/12/09 01:18:00 UTC

[jira] [Assigned] (HDDS-13545) MutableVolumeSet code cleanup

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

Rishabh Patel reassigned HDDS-13545:
------------------------------------

    Assignee: Rishabh Patel  (was: Mahesh kumar gaddam)

> MutableVolumeSet code cleanup
> -----------------------------
>
>                 Key: HDDS-13545
>                 URL: https://issues.apache.org/jira/browse/HDDS-13545
>             Project: Apache Ozone
>          Issue Type: Improvement
>          Components: Ozone Datanode
>            Reporter: Ethan Rose
>            Assignee: Rishabh Patel
>            Priority: Major
>
> A list of things that can be fixed in {{MutableVolumeSet}}
>  * {{addVolume}} and {{removeVolume}} are only used in tests, but contain locking and logging like prod code and must be updated for changes like HDDS-13093
>  ** {{addVolume}} can be replaced in tests by setting the volume as an {{hdds.datanode.dir}} in the config.
>  ** {{removeVolume}} is only used in a test for itself. It can be removed.
>  * {{getVolumeList}} is used in prod code, its {{@VisibleForTesting}} annotation should be removed.
>  - {{getVolumeMap}} is {{@VisibleForTesting}} but has a [single prod usage|https://github.com/apache/ozone/blob/dc9952e446940b82b277a7e8c9d02239a8417a06/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/states/endpoint/VersionEndpointTask.java#L120] which should be replaced with {{{}getVolumeList{}}}.
>  * {{hasEnoughVolumes}} should use {{failedVolumeMap}} and {{volumeMap}} fields directly instead of their getters to avoid an extra copy.
>  * {{VolumeStateMap}} can be removed.
>  ** Although its values are updated, nothing is reading them.
>  ** When we add storage policy/tiering by disk type it may not even be implemented this way, so for now we can remove this field to avoid having another data structure to keep in sync.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org