Hi Charles,

Thanks for pointing me to the doc, it really helps me a lot.

I am confused by another problem when I read DFSOutputStream.java. When
packets a block are being sent through the pipeline, why DataStreamer will
wait for all acks of the packets are received
before the last packet is sent ? I see in DataSteamer's run, it will wait
for ackQueue's size == 0, then add the last packet to ackQueue, then wait
for ackQueue.size == 0 again and finally close the
responseProcessor and the blockStream.

Thanks,
Xiaohe

On Fri, Mar 13, 2015 at 8:27 PM, Charles Lamb <cl...@cloudera.com> wrote:

> On 3/13/2015 7:55 AM, xiaohe lan wrote:
>
>> Hi experts,
>>
>> When HDFS client sends a packet of data to a DN in the pipeline, the
>> packet
>> will then be sent to the next DN in the pipeline. What confuses me is when
>> the ack from a DN in the pipeline will be sent back ? In which order ? It
>> is sent from the last to first or in other ways ?
>>
>> Thanks,
>> Xiaohe
>>
> Hi Xiaohe,
>
> Take a look at figure 3.2 in https://issues.apache.org/
> jira/secure/attachment/12445209/appendDesign3.pdf.
>
> IHTH.
>
> Charles
>
>

Reply via email to