[ 
https://issues.apache.org/jira/browse/HBASE-794?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12705219#action_12705219
 ] 

Chad Walters commented on HBASE-794:
------------------------------------

I am biased here since I have worked on and backed Thrift extensively but I am 
in favor of sticking with Thrift.

I'll grant you that Thrift isn't as mature as protocol buffers but it has a lot 
of useful features that protocol buffers lacks. Protocol buffers isn't a 
complete enough solution for my tastes -- no RPC, lacks many languages that 
Thrift supports, etc.

One of the great efficiencies of C++ is the fact that you can have objects as 
values in stead of references. You probably won't make too much traction 
suggesting that that be pulled out of Thrift altogether although you could 
probably argue for the addition of type annotations that would allow for C++ to 
have references instead of values for some fields. Then you could introduce 
nulls. This is actually a feature I would very much like to see in Thrift. The 
lack of nulls can be worked around in other ways as well.

Definitely follow Bryan's suggestion of testing out the CompactBinaryProtocol 
as well as the default BinaryProtocol.




> Language neutral IPC as a first class component of HBase architecture
> ---------------------------------------------------------------------
>
>                 Key: HBASE-794
>                 URL: https://issues.apache.org/jira/browse/HBASE-794
>             Project: Hadoop HBase
>          Issue Type: New Feature
>          Components: client, ipc, master, regionserver
>            Reporter: Andrew Purtell
>            Assignee: Andrew Purtell
>            Priority: Minor
>
> This issue considers making a language neutral IPC mechanism and wire format 
> a first class component of HBase architecture. Clients could talk to the 
> master and regionserver using this protocol instead of HRPC at their option.
> Options for language neutral IPC include:
> * Thrift: http://incubator.apache.org/thrift/
> * Protocol buffers: http://code.google.com/p/protobuf/
> * XDR: http://en.wikipedia.org/wiki/External_Data_Representation

-- 
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