[ 
https://issues.apache.org/jira/browse/HDDS-6518?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17530246#comment-17530246
 ] 

Uma Maheswara Rao G commented on HDDS-6518:
-------------------------------------------

I am not sure I understand this task fully. It seems there are two parts here.
Coordinator DN needs to read the content and write.

For reading part, we are trying move the current ECinputStream logics to common 
code. So we can reuse the parts.
Here is one task https://issues.apache.org/jira/browse/HDDS-6665 which proposes 
to extend and reconstruct parity as well. Basically this task should 
reconstruct any given missing indexes. If this works, then we need only writer 
part.

Partly we are are discussing the directions on how we wanted to transfer the 
blocks to targets. The discussion is in Apache slack EC channel: 
https://the-asf.slack.com/archives/C015XUPNBEH/p1651184319508819 

> 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