Siyao Meng created HDDS-17516:
---------------------------------

             Summary: Intermittent failure in 
TestReconAndAdminContainerCLI#testMissingContainer: Recon has not picked up new 
container
                 Key: HDDS-17516
                 URL: https://issues.apache.org/jira/browse/HDDS-17516
             Project: Apache Ozone
          Issue Type: Sub-task
          Components: Ozone Recon, test
            Reporter: Siyao Meng
            Assignee: Siyao Meng


{code}
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 31.49 s <<< 
FAILURE! -- in org.apache.hadoop.ozone.recon.TestReconAndAdminContainerCLI
org.apache.hadoop.ozone.recon.TestReconAndAdminContainerCLI.testMissingContainer
 -- Time elapsed: 0.058 s <<< FAILURE!
org.opentest4j.AssertionFailedError: expected: <[ContainerInfo{id=#1, 
state=OPEN, ...}, ContainerInfo{id=#2, state=OPEN, 
stateEnterTime=2026-10-28T05:05:13.980Z, ...}]> but was: <[ContainerInfo{id=#1, 
state=OPEN, ...}]>
        at org.junit.jupiter.api.Assertions.assertEquals(Assertions.java:1145)
        at 
org.apache.hadoop.ozone.recon.TestReconAndAdminContainerCLI.setupRatisKey(TestReconAndAdminContainerCLI.java:414)
        at 
org.apache.hadoop.ozone.recon.TestReconAndAdminContainerCLI.testMissingContainer(TestReconAndAdminContainerCLI.java:203)
{code}

h3. Root cause

{{setupRatisKey}} writes a key and then immediately asserts that Recon's 
container list equals SCM's. SCM knows the new container as soon as it 
allocates it, but Recon only learns about it from the datanode container report 
sent with a Recon heartbeat. Since HDDS-17314 the datanode heartbeats Recon on 
its own interval ({{hdds.heartbeat.recon.interval}}, 1s in this test), so a 
triggered heartbeat right after the container is created can skip Recon, and 
the report arrives up to about a second later. In the failing run container #2 
was allocated about 50ms before the assertion.

h3. Fix

Wait for Recon's container list to match SCM's instead of asserting it once.

- https://github.com/apache/ozone/actions/runs/40633118285/job/122637731111



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

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

Reply via email to