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

Attila Doroszlai resolved HDDS-16235.
-------------------------------------
    Resolution: Duplicate

> Intermittent failure in 
> TestOzoneClientRetriesOnExceptions#testMaxRetriesByOzoneClient
> --------------------------------------------------------------------------------------
>
>                 Key: HDDS-16235
>                 URL: https://issues.apache.org/jira/browse/HDDS-16235
>             Project: Apache Ozone
>          Issue Type: Sub-task
>            Reporter: Meng-Shuan Tsai
>            Assignee: Meng-Shuan Tsai
>            Priority: Major
>
> testMaxRetriesByOzoneClient fails intermittently (~3% of runs) at 
> TestOzoneClientRetriesOnExceptions.java:206 with:
> {code:java}
> java.io.IOException: Failed to execute command cmdType: CreateContainer 
> containerID: 1 datanodeUuid: "..." createContainer { state: OPEN }
>       at 
> org.apache.hadoop.hdds.scm.XceiverClientSpi.getIOExceptionForSendCommand(XceiverClientSpi.java:178)
>       at 
> org.apache.hadoop.hdds.scm.XceiverClientSpi.sendCommand(XceiverClientSpi.java:131)
>       at 
> org.apache.hadoop.ozone.client.rpc.TestOzoneClientRetriesOnExceptions.testMaxRetriesByOzoneClient(TestOzoneClientRetriesOnExceptions.java:206)
> Caused by: java.util.concurrent.ExecutionException: 
> org.apache.ratis.protocol.exceptions.StateMachineException: 
> org.apache.hadoop.hdds.scm.container.common.helpers.StorageContainerException:
>  Container creation failed because key value container already exists
>       at 
> org.apache.hadoop.hdds.scm.XceiverClientSpi.sendCommand(XceiverClientSpi.java:125)
> Caused by: org.apache.ratis.protocol.exceptions.StateMachineException: 
> org.apache.hadoop.hdds.scm.container.common.helpers.StorageContainerException:
>  Container creation failed because key value container already exists
>       at 
> org.apache.hadoop.ozone.container.common.transport.server.ratis.ContainerStateMachine.lambda$applyTransaction$2(ContainerStateMachine.java:1193)
> {code}
> Steps to reproduce: run TestOzoneClientRetriesOnExceptions out of 100 runs ( 
> [https://github.com/shuan1026/ozone/actions/runs/32260061359]), 3 failed with 
> this identical stack trace, all on containerID 1. Datanode-side log for one 
> such failure:
> {code:java}
> 14:18:42,671 leader elected for the container's pipeline (term 1)
> 14:18:42,788 CreateContainer for containerID 1 fails: Result: 
> CONTAINER_ALREADY_EXISTS
> 14:18:42,800 ContainerStateMachine ApplyTransaction failed at logIndex 5
> 14:18:42,807 pipeline close action triggered as a result
> {code}
> Line 206 is the test's own manual 
> xceiverClient.sendCommand(getCreateContainerRequest(...)), sent once per 
> pre-allocated container to ensure it is OPEN before writing. By design this 
> should be the only path that creates the container on the datanode, but the 
> log shows it was already created by something else ~117ms after the 
> pipeline's leader election, so the test's own call is rejected as a 
> duplicate, non-idempotent create.
> No @Flaky annotation exists on this test and no prior JIRA report was found 
> for it.



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