[ 
https://issues.apache.org/jira/browse/HDFS-1578?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12980242#action_12980242
 ] 

Hairong Kuang commented on HDFS-1578:
-------------------------------------

Our use case of this is to support across cluster communications. We assume 
that every datanode runs the same data transfer protocol in a cluster but two 
clusters may run a slight different data transfer protocol versions. So the 
client can fetch the version before any I/O starts. This is done once per 
client not for every DN commection.

> First step towards data transter protocol compatibility: support 
> DatanodeProtocol#getDataTransferProtocolVersion
> ----------------------------------------------------------------------------------------------------------------
>
>                 Key: HDFS-1578
>                 URL: https://issues.apache.org/jira/browse/HDFS-1578
>             Project: Hadoop HDFS
>          Issue Type: New Feature
>            Reporter: Hairong Kuang
>            Assignee: Hairong Kuang
>             Fix For: 0.23.0
>
>
> HADOOP-6904 allows us to handle RPC changes in a compatible way. However, we 
> have one more protocol to take care of, the data transfer protocol, which a 
> dfs client uses to read data from or write data to a datanode.
>  
> My proposal is to add a new RPC getDataTransferVersion to DatanodeProtocol 
> that returns the data transfer protocol version running on the datanode. A 
> dfs client gets the datanode's version number before it reads from/writes to 
> a datanode. With this, the dfs client could behave differently according to 
> datanode's data transfer version. This provides a base for us to make data 
> transfer protocol changes in a compatible way.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to