[ 
https://issues.apache.org/jira/browse/HDDS-17236?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated HDDS-17236:
----------------------------------
    Labels: pull-request-available  (was: )

> Intermittent failure in ozonesecure public key and certificate recovery test
> ----------------------------------------------------------------------------
>
>                 Key: HDDS-17236
>                 URL: https://issues.apache.org/jira/browse/HDDS-17236
>             Project: Apache Ozone
>          Issue Type: Sub-task
>          Components: docker-compose, test
>            Reporter: Siyao Meng
>            Assignee: Siyao Meng
>            Priority: Major
>              Labels: pull-request-available
>
> {code}
> Port 9888 is available on recon
> find /data/metadata/recon/keys/public.pem -delete && find 
> /data/metadata/recon/certs/*.crt -delete succeed
> Ncat: Could not resolve hostname "recon": Name or service not known. QUITTING.
> Port 9888 is not available on recon yet
> ...
> Timed out waiting on recon 9888 to become available
> ERROR: Test execution of ozonesecure/test.sh is FAILED!!!!
> {code}
> h3. Root cause
> {{ozonesecure/public-key-cert-recovery-test.sh}} restarts Recon (and later 
> the datanodes) with {{docker-compose stop recon}} followed by 
> {{docker-compose start recon}}. The Recon container log shows the SIGTERM and 
> a clean shutdown, but no second {{STARTUP_MSG}}, and the hostname stays 
> unresolvable for the whole 120s wait. So the container was never started 
> again, yet {{docker-compose start}} exited 0 (the script runs with {{set -e}} 
> and kept going).
> {{docker compose start}} (v2.38.2 on the runner) lists the project containers 
> once and skips any whose state is {{running}}. The Docker daemon wakes up the 
> {{docker stop}} caller in {{handleContainerExit}} via {{SetStopped}} before 
> it writes the new state to the replica that {{ContainerList}} reads 
> ({{CheckpointTo(containersReplica)}}). If {{start}} lists containers in that 
> window, it still sees Recon as running and silently does nothing.
> The same failure appears on master on 2026-07-13, 2026-07-15 and 2026-08-31 
> (ozone-build-results), always with the identical log pattern.
> h3. Fix
> Use {{docker-compose restart}} instead of {{stop}} + {{start}}. It calls 
> {{ContainerRestart}} for each container unconditionally, so the stop and 
> start happen inside the daemon with no stale state check in between.
> - https://github.com/apache/ozone/actions/runs/39561350318/job/119114972849



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