[ https://issues.apache.org/jira/browse/HADOOP-1908?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Hairong Kuang updated HADOOP-1908: ---------------------------------- Attachment: datanodeRestructure.patch This patch includes all of Raghu's new comments: 1. Remove additional check for null streams. It also makes BlockSender & BlockReceiver to be "Closable", so we can use IOUtils.closeStream to close block senders & receivers. 2. Add code to receive the response for a block write request so it eliminates the additional exception thrown by a data node when sends write response back. But the code ignores the response for now and leaves HADOOP-1927 to correctly handle the response. 3. DFSClient sends a "0" to mark the end of a block. I also marked the protocol change in the comment of DATA_TRANSFER_VERSION increment. > Restructure data node code so that block sending/receiving is seperated from > data transfer header handling > ---------------------------------------------------------------------------------------------------------- > > Key: HADOOP-1908 > URL: https://issues.apache.org/jira/browse/HADOOP-1908 > Project: Hadoop > Issue Type: Improvement > Components: dfs > Affects Versions: 0.14.1 > Reporter: Hairong Kuang > Assignee: Hairong Kuang > Fix For: 0.15.0 > > Attachments: datanode.patch, datanodeRestructure.patch, > datanodeRestructure.patch > > > This jira is intended for code sharing. I'd like to have a BlockSender which > is resposible for reading a block from a disk and writing it to an output > stream, and a BlockReceiver which receives a block from an input stream, > writes it to a disk, and possibly writes it a mirror ouput stream to support > pipeline writes. Block sender and receiver code is independent of any block > IO protocols so it could be shared by block transfer, block write, block > read, and future block replacement introduced by data node rebalancing. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.