Siyao Meng created HDDS-16133:
---------------------------------
Summary: Intermittent timeout in
TestReconTasks#testContainerHealthTaskDetectsEmptyMissingWhenAllReplicasLost
Key: HDDS-16133
URL: https://issues.apache.org/jira/browse/HDDS-16133
Project: Apache Ozone
Issue Type: Sub-task
Components: Ozone Recon, test
Reporter: Siyao Meng
{code}
[ERROR] Tests run: 6, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 212.2 s
<<< FAILURE! -- in org.apache.hadoop.ozone.recon.TestReconTasks
[ERROR]
org.apache.hadoop.ozone.recon.TestReconTasks.testContainerHealthTaskDetectsEmptyMissingWhenAllReplicasLost
-- Time elapsed: 59.98 s <<< ERROR!
java.util.concurrent.TimeoutException: timeout: after 20000 millis
at
org.apache.ozone.test.LambdaTestUtils$GenerateTimeout.evaluate(LambdaTestUtils.java:258)
at org.apache.ozone.test.LambdaTestUtils.await(LambdaTestUtils.java:144)
at
org.apache.hadoop.ozone.recon.TestReconTasks.testContainerHealthTaskDetectsEmptyMissingWhenAllReplicasLost(TestReconTasks.java:387)
{code}
The test writes a real block into the container, then waits for Recon to report
it as EMPTY_MISSING (and not MISSING) after all replicas are lost. Recon
classifies EMPTY_MISSING via {{getNumberOfKeys() == 0}}; once the datanode
container report propagates a non-zero key count, the container is classified
MISSING, so the awaited EMPTY_MISSING state can be missed. In the logs every
scan reports {{Stored 1 MISSING, 0 EMPTY_MISSING}} until the 20s wait expires,
so more time does not help. The sibling
{{testContainerHealthTaskDetectsMissingForContainerWithKeys}} is deterministic
because it sets the key count explicitly; this test could do the same (force
key count to 0 after the datanode is stopped).
Seen in:
-
https://github.com/adoroszlai/ozone-build-results/blob/master/2026/08/02/51843/integration-recon/hadoop-ozone/integration-test-recon/org.apache.hadoop.ozone.recon.TestReconTasks.txt
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]