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

Kaijie Chen updated HDDS-6518:
------------------------------
    Description: 
When replicating EC containers, we need more rpc than copy container.
h3. CoordinatorDN -> HealthyDN

This patch adds support for {{ContainerCommand}} in replication service.

Server Side:
 # Added command handler to dispatch container command requests.

Client Side:
 # Added {{readContainer()}} to get number of total blocks to list.
 # Added {{listBlock()}} to list blocks in a container.
 # Added {{readChunk()}} to read the data from healthy datanodes.

h3. CoordinatorDN -> TargetDN

The CoordinatorDN should push the chunks to the TargetDN after computing 
missing blocks.
{{WriteChunkProto}} without {{data}} means the end of the container.

Push is chosen for following reasons:
 # CoordinatorDN does not need to hold the missing blocks for long.
 # CoordinatorDN can controll the progress of the recovery.

Server Side:
 # Added dummy command handler for push chunk and start recovery.

Client Side:
 # Added {{writeChunk()}} to push chunks to target datanodes.

> EC: Add rpc for EC recovery in replication service
> --------------------------------------------------
>
>                 Key: HDDS-6518
>                 URL: https://issues.apache.org/jira/browse/HDDS-6518
>             Project: Apache Ozone
>          Issue Type: Sub-task
>            Reporter: Kaijie Chen
>            Assignee: Kaijie Chen
>            Priority: Major
>              Labels: pull-request-available
>
> When replicating EC containers, we need more rpc than copy container.
> h3. CoordinatorDN -> HealthyDN
> This patch adds support for {{ContainerCommand}} in replication service.
> Server Side:
>  # Added command handler to dispatch container command requests.
> Client Side:
>  # Added {{readContainer()}} to get number of total blocks to list.
>  # Added {{listBlock()}} to list blocks in a container.
>  # Added {{readChunk()}} to read the data from healthy datanodes.
> h3. CoordinatorDN -> TargetDN
> The CoordinatorDN should push the chunks to the TargetDN after computing 
> missing blocks.
> {{WriteChunkProto}} without {{data}} means the end of the container.
> Push is chosen for following reasons:
>  # CoordinatorDN does not need to hold the missing blocks for long.
>  # CoordinatorDN can controll the progress of the recovery.
> Server Side:
>  # Added dummy command handler for push chunk and start recovery.
> Client Side:
>  # Added {{writeChunk()}} to push chunks to target datanodes.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

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

Reply via email to