chihsuan commented on code in PR #11059:
URL: https://github.com/apache/ozone/pull/11059#discussion_r3829412735
##########
hadoop-ozone/integration-test-recon/src/test/java/org/apache/hadoop/ozone/recon/TestReconTasks.java:
##########
@@ -340,9 +340,9 @@ public void
testContainerHealthTaskDetectsUnderReplicatedAfterNodeFailure()
* <p>Classification logic: When a CLOSING container has zero replicas,
* {@code ClosingContainerHandler} samples it as {@code MISSING}. Then
* {@code handleMissingContainer()} calls {@code isEmptyMissing()} which
checks
- * {@link ContainerInfo#getNumberOfKeys()}. Since the container was created
via
- * XceiverClient bypassing Ozone Manager, SCM's key count is 0, so the
container
- * is classified as {@code EMPTY_MISSING} rather than {@code MISSING}.</p>
+ * {@link ContainerInfo#getNumberOfKeys()}. The container is created empty
(no block is written), so the
+ * datanode reports a replica key count of 0 and Recon's {@link
ContainerInfo} key count stays 0, so the
+ * container is classified as {@code EMPTY_MISSING} rather than {@code
MISSING}.</p>
Review Comment:
nit: The updated explanation makes sense. Could we make it a little more
concise? Since container reports also update the key count, the current wording
may be slightly misleading.
For example:
```
* Since no block is written, container reports keep the key count at 0, so
* Recon classifies the container as {@code EMPTY_MISSING} rather than
* {@code MISSING}.
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]