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

Uma Maheswara Rao G updated HDDS-6384:
--------------------------------------
    Fix Version/s: EC-Branch
       Resolution: Fixed
           Status: Resolved  (was: Patch Available)

> EC: Ensure EC container usage is updated correctly when handling reports
> ------------------------------------------------------------------------
>
>                 Key: HDDS-6384
>                 URL: https://issues.apache.org/jira/browse/HDDS-6384
>             Project: Apache Ozone
>          Issue Type: Sub-task
>          Components: SCM
>            Reporter: Stephen O'Donnell
>            Assignee: Stephen O'Donnell
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: EC-Branch
>
>
> The current container report handling logic in AbstractContainerReportHandler 
> does update the container usage and key count correctly in SCM for EC 
> containers. The current logic says:
> {code:java}
> for (ContainerReplica r : otherReplicas) {
>   // Open containers are generally growing in key count and size, the
>   // overall size should be the min of all reported replicas.
>   if (containerInfo.getState().equals(HddsProtos.LifeCycleState.OPEN)) {
>     usedBytes = Math.min(usedBytes, r.getBytesUsed());
>     keyCount = Math.min(keyCount, r.getKeyCount());
>   } else {
>     // Containers which are not open can only shrink in size, so use the
>     // largest values reported.
>     usedBytes = Math.max(usedBytes, r.getBytesUsed());
>     keyCount = Math.max(keyCount, r.getKeyCount());
>   }
> } {code}
> For EC Containers, the bytes used will be different across all the replicas 
> due to partial stripes. The first data replica and the parity replicas should 
> have the max size, but other data replicas are likely to be smaller. 
> Therefore using the min as above will not work.
> We should either use the max value for open containers, or the min of the 
> first data and parity group, and ignore the usage in the other replicas.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

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

Reply via email to