You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ozone.apache.org by "Peter Lee (Jira)" <ji...@apache.org> on 2025/03/05 17:49:00 UTC

[jira] [Assigned] (HDDS-9596) Determine the criteria for calling a container empty in the SCM

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

Peter Lee reassigned HDDS-9596:
-------------------------------

    Assignee: Peter Lee

> Determine the criteria for calling a container empty in the SCM
> ---------------------------------------------------------------
>
>                 Key: HDDS-9596
>                 URL: https://issues.apache.org/jira/browse/HDDS-9596
>             Project: Apache Ozone
>          Issue Type: Sub-task
>          Components: SCM
>            Reporter: Siddhant Sangwan
>            Assignee: Peter Lee
>            Priority: Major
>
> This is the current apache master logic for identifying an empty container:
> {code}
>   private boolean isContainerEmptyAndClosed(final ContainerInfo container,
>       final Set<ContainerReplica> replicas) {
>     return container.getState() == HddsProtos.LifeCycleState.CLOSED &&
>         !replicas.isEmpty() &&
>         replicas.stream().allMatch(
>             r -> r.getState() == ContainerReplicaProto.State.CLOSED &&
>                 r.isEmpty());
>   }
> {code}
> What happens if: For an open container, a write is successful in 2 replicas, but not in the 3rd one. Now the pipeline is broken and closed and this container moves to quasi closed. The replicas are also quasi closed. It has two replicas on unique origins, so then the container is closed. At this stage, the quasi closed replicas go down and we’re only left with the 3rd empty replica. Won’t we be wrong in marking this container as empty now?



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