Stephen O'Donnell created HDDS-16405:
----------------------------------------

             Summary: ReplicationManagerReport should not be used for transient 
state
                 Key: HDDS-16405
                 URL: https://issues.apache.org/jira/browse/HDDS-16405
             Project: Apache Ozone
          Issue Type: Bug
          Components: SCM
            Reporter: Stephen O'Donnell
            Assignee: Stephen O'Donnell


In a recent change ReplicationManagerReport gained an extra field to track the 
end health state of a container when it is processed. While this resulted in a 
smaller code change, this not how RMReport is supposed to be used and it was 
intended to have aggregated stats, not per request stats. We already have the 
ContainerCheckRequest object which has all details of a request and any result 
can be set in there.

This change removes the transient per container state from RMReport and moves 
the result into ContainerCheckRequest where it is better suited. It also 
centralizes the report "increment and sample" so the state and increment are 
performed together with a single call from the handlers.

Also added a new test in TestContainerCheckRequest to ensure that when calling 
request.setHealthState() it updates the report and sets the heath result, which 
avoids having to update all the sets that assert on the report state, as that 
would have made this change a lot larger.



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