[ 
http://issues.apache.org/jira/browse/HADOOP-252?page=comments#action_12413191 ] 

Doug Cutting commented on HADOOP-252:
-------------------------------------

One complication is that different RPC protocols share common connections, in 
order to minimize the number of per-connection threads and sockets.  So the 
versions would really need to be transmitted with each request, or perhaps with 
the first request of each protocol over a given connection.

> add versioning to RPC
> ---------------------
>
>          Key: HADOOP-252
>          URL: http://issues.apache.org/jira/browse/HADOOP-252
>      Project: Hadoop
>         Type: Improvement

>   Components: ipc
>     Reporter: Yoram Arnon

>
> currently, any change to any rpc message breaks the protocol, with mysterious 
> exceptions occurring at run time.
> a versioning sceme would have two benefits:
> - intelligent error messages, indicating that an upgrade is required
> - backwards compatibility could be supported.
> the proposal is to add a "const version" for each protocol, and a method: int 
> getVersion(int version) that sends the client's version and receives the 
> server's version. This would be the first method invoked on connection. Both 
> sides then either agree on the lowest version number, providing backwards 
> compatibility support, or abort the connection as "unsupported version".

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to