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

Elliott Clark commented on HTRACE-164:
--------------------------------------

bq.Elliot, there is nothing about this patch that impacts you at all.
That's neither constructive nor correct.

bq.You don't use htraced, and this patch only affects htraced.
You have no idea what's going on in my deploys. Also I'm with this project so 
that's just incorrect.

bq.And we can't bundle most dependencies because of license incompatibilities
Thrift's apache. With only bsd dependencies.
Grpc is bsd. With only bsd dependencies
So both of the suggestions that's I've put forward are totally linkable in any 
fashion that you want, with static linking being what I would prefer.

bq.Again, HTrace is not Hadoop. 
No it's not but lets be honest about what the first 200 installs of this 
software are going to be. The first uses will all be in the 
hadoop/hbase/phoenix world. If you make life hard for the first users, none are 
going to be compelled to use this other places.

I can't see any benefit to msgpack:
* Fewer users of it
** 
https://www.google.com/trends/explore#q=msgpack%2C%20protobuf%2C%20apache%20thrift&cmpt=q&tz=
* No proven perf wins vs thift or protobuf
** Thrift-compact is smaller over the wire.
** Thrift-binary is equal in speed.
* another dep on the server that's not one of the ones already in use by the 
systems using htrace.
* A hand coded serialization format on the client side.
** Writables deja vu
* Hard coded limit on span data size.

bq.Using something just because Hadoop uses it is practically the definition of 
NIH.
I'm suggesting we use something that's used in large environments with lots of 
users and lots of developers. The htrace project doesn't have to create a new 
rpc format. We have no requirements that couldn't be answered by an already 
existing stack. I'm literally saying: Don't invent something here just for 
htrace.

bq.If you think msgpack is a plague upon mankind and you want to write your own 
JSON client for htraced
I think that adding msgpack doesn't gain enough to make the added complexity on 
the client and the server worth it. gzipped json is pretty fast. If we need 
faster and need to have an rpc then using an already existing rpc stack makes 
more sense.
I don't think that htrace is even close to mature enough to be encouraging 
fracturing the community. There shouldn't be one format for java and one for 
some C.

bq. We would love to support more span receivers there. 
That leads to an explosion of complexity that no one wins from.

bq.Let's be constructive here.
I've suggested multiple alternatives with technical reasoning around why they 
would be better. I'm -1 on this patch for the technical reasons above.

> htrace hrpc: use msgpack for serialization
> ------------------------------------------
>
>                 Key: HTRACE-164
>                 URL: https://issues.apache.org/jira/browse/HTRACE-164
>             Project: HTrace
>          Issue Type: Bug
>    Affects Versions: 3.2.0
>            Reporter: Colin Patrick McCabe
>            Assignee: Colin Patrick McCabe
>         Attachments: HTRACE-164.002.patch
>
>
> htrace HRPC should use msgpack for serialization.  Messages serialized using 
> msgpack use less space on the wire and use less CPU time to encode.  The CMP 
> library allows us to include msgpack support easily in the htrace C client.  
> There is also good Java and Golang support available.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to