[ 
https://issues.apache.org/jira/browse/HADOOP-7557?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13126208#comment-13126208
 ] 

Todd Lipcon commented on HADOOP-7557:
-------------------------------------

bq. Even without that, if something can be done without adding a dependency and 
in less code then what real value does the dependency bring?

In this case, using a dependency on a format that already has efficient 
implementations in many languages makes it easier for a new language to 
implement HRPC. It's the difference between custom code to parse your generic 
format (tag-value pairs), vs just running "protoc -gen <mylanguage>" and 
calling "IpcHeader.parseFrom(stream)".

This is coming from the perspective of having implemented Hadoop RPC servers 
and clients in both Erlang and Python. In both cases it would have been easier 
to describe the protocol and headers in terms of varint-prefixed protobufs than 
in custom serializations.

I don't mean to block progress - if you two can agree on a patch, I'm fine with 
it. Just giving my opinion that all of this extra layering and switchability 
only makes it _harder_ for someone to implement the protocol, not easier.
                
> Make  IPC  header be extensible
> -------------------------------
>
>                 Key: HADOOP-7557
>                 URL: https://issues.apache.org/jira/browse/HADOOP-7557
>             Project: Hadoop Common
>          Issue Type: Improvement
>            Reporter: Sanjay Radia
>            Assignee: Sanjay Radia
>         Attachments: HADOOP-7557.patch, IpcHeader.proto, ipcHeader1.patch, 
> ipcHeader2.patch
>
>


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to