[
https://issues.apache.org/jira/browse/HDFS-642?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12759276#action_12759276
]
Hairong Kuang commented on HDFS-642:
------------------------------------
I want to make it clear that this design does not add an additional message. In
the current trunk, a client also send a byte "0" to indicate the end of the
block. However the performance impact is caused by synchronization. The client
does not send the end of block message until it receives a "success" ack for
the block's last data packet.
> Support pipeline close and close recovery
> -----------------------------------------
>
> Key: HDFS-642
> URL: https://issues.apache.org/jira/browse/HDFS-642
> Project: Hadoop HDFS
> Issue Type: Sub-task
> Reporter: Hairong Kuang
> Assignee: Hairong Kuang
> Fix For: Append Branch
>
>
> This jira intends to implement the third stage of block construction: close.
> The main ideas are:
> 1. A client notifies the datanodes in the pipeline to finalize a replica and
> then shuts down the pipeline by sending a special end-of-block message.
> 2. The end-of-block message does not get sent until the client finishes
> sending all packets belong to the block and have received all their acks.
> 3. If close fails, the client recovers the failures by setting up a new
> pipeline with the remaining datanodes and a newer generation stamp.
> 4. I plan to use an empty packet as the end-of-block message.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.