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:

      1. Added command handler to dispatch container command requests.

      Client Side:

      1. Added readContainer() to get number of total blocks to list.
      2. Added listBlock() to list blocks in a container.
      3. 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:

      1. CoordinatorDN does not need to hold the missing blocks for long.
      2. CoordinatorDN can controll the progress of the recovery.

      Server Side:

      1. Added dummy command handler for push chunk and start recovery.

      Client Side:

      1. Added writeChunk() to push chunks to target datanodes.

      Attachments

        Issue Links

          Activity

            People

              ckj Kaijie Chen
              ckj Kaijie Chen
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: