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]