[ 
https://issues.apache.org/jira/browse/THRIFT-110?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12624190#action_12624190
 ] 

Eric Anderson commented on THRIFT-110:
--------------------------------------

bq You would also have to instantiate the structure by name which is impossible 
in C++ and expensive in Java.

This is not completely true; in our use of thrift, we are only using the 
marshalling layer, not the service portion of it.  We treat certain structures 
(those with names like xRequest or xResponse) as messages. We extended thrift 
so that we could specify a virtual base class for structures, and then it's 
easy to write something that will instantiate a structure by name and can pass 
it to something else.  This approach doesn't work with base types or 
sets/lists/maps, but you could wrap those in structures.  I can send in a 
patch, but it won't be as clean as the other patches I've submitted since I'm 
working on those first.


> A more compact format 
> ----------------------
>
>                 Key: THRIFT-110
>                 URL: https://issues.apache.org/jira/browse/THRIFT-110
>             Project: Thrift
>          Issue Type: Improvement
>            Reporter: Noble Paul
>
> Thrift is not very compact in writing out data as (say protobuf) . It does 
> not have the concept of variable length integers and various other 
> optimizations possible . In Solr we use a lot of such optimizations to make a 
> very compact payload. Thrift has a lot common with that format.
> It is all done in a single class
> http://svn.apache.org/viewvc/lucene/solr/trunk/src/java/org/apache/solr/common/util/NamedListCodec.java?revision=685640&view=markup
> The other optimizations include writing type/value  in same byte, very fast 
> writes of Strings, externalizable strings etc 
> We could use a thrift format for non-java clients and I would like to see it 
> as compact as the current java version

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