Details
-
Sub-task
-
Status: Resolved
-
Major
-
Resolution: Won't Do
-
None
-
None
-
None
Description
When replicating EC containers, we need more rpc than copy container.
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.
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.
Attachments
Issue Links
- links to