Devesh Kumar Singh created HDDS-15036:
-----------------------------------------

             Summary: Retry replication/import on another volume when 
destination container directory already exists
                 Key: HDDS-15036
                 URL: https://issues.apache.org/jira/browse/HDDS-15036
             Project: Apache Ozone
          Issue Type: Task
          Components: Ozone Datanode
    Affects Versions: 2.1.0
            Reporter: Devesh Kumar Singh
            Assignee: Devesh Kumar Singh


*Description:*
  During DN-side replication/import, the current path selection validates only 
the chosen target path. If a stale container directory already exists on that 
selected volume, the import/create path can fail with CONTAINER_ALREADY_EXISTS 
even when another eligible volume is available on the same DN.

  *Current behavior:*
  - a target volume is chosen once
  - the container create/import path checks only the selected target metadata 
path
  - if that path already exists, the operation fails
  - the flow does not appear to retry on another eligible volume

  *Why this is a problem:*
  A stale undeleted directory on one volume should not necessarily convert a 
per-volume collision into a full DN-level replication/import failure. This is 
especially relevant when stale directories may remain after earlier failed 
delete or duplicate-directory scenarios.

*Proposed fix:*
  - treat destination-path collision as a recoverable per-volume failure in DN 
replication/import flows
  - when the selected volume already contains the target container directory, 
retry with another eligible volume if available
  - keep the check scoped to the selected volume/path rather than introducing a 
DN-wide scan unless later proven necessary

  *Acceptance criteria:*
  - replication/import succeeds on another eligible volume when one selected 
volume has a stale destination directory
  - if no alternate volume exists, the failure remains explicit
  - add tests for stale destination directory on one volume with successful 
retry to another



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