[ https://issues.apache.org/jira/browse/HDFS-1335?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12898345#action_12898345 ] Doug Cutting commented on HDFS-1335: ------------------------------------ Thanks for elaborating. This patch seems fine: it's simple and does not alone introduce significant risk. However subsequent changes to ProtocolCompatible will need to be carefully reviewed and tested. We don't yet have a testing framework to do that. So we're delaying that work (interoperability testing of different versions) until we actually have two versions that are meant to interoperate. This is a technical debt will be due in full the first time ProtocolCompatible is altered, I think. > HDFS side of HADOOP-6904: first step towards inter-version communications between dfs client and NameNode > --------------------------------------------------------------------------------------------------------- > > Key: HDFS-1335 > URL: https://issues.apache.org/jira/browse/HDFS-1335 > Project: Hadoop HDFS > Issue Type: New Feature > Components: hdfs client, name-node > Affects Versions: 0.22.0 > Reporter: Hairong Kuang > Assignee: Hairong Kuang > Fix For: 0.22.0 > > Attachments: hdfsRpcVersion.patch > > > The idea is that for getProtocolVersion, NameNode checks if the client and server versions are compatible if the server version is greater than the client version. If no, throws a VersionIncompatible exception; otherwise, returns the server version. > On the dfs client side, when creating a NameNode proxy, catches the VersionMismatch exception and then checks if the client version and the server version are compatible if the client version is greater than the server version. If not compatible, throws exception VersionIncomptible; otherwise, records the server version and continues. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.