accumulo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject Re: State of our RPCs
Date Tue, 01 Dec 2015 18:02:15 GMT

What was it about Thrift that drove us to use it? Was it the bindings for multiple languages?
Should this decision be revisited? 

----- Original Message -----

From: "Josh Elser" <> 
To: "dev" <> 
Sent: Tuesday, December 1, 2015 12:49:26 PM 
Subject: State of our RPCs 

Hi -- 

My adventures in Thrift as a part of ACCUMULO-4065 are finally coming to 
a close, it seems. The briefest summary I can give is that our hack to 
work around an 0.9.0->0.9.1 compatibility issue ended up creating a bug 
in a very obtuse case (when a server answering a oneway Thrift call 
threw an RTE or an Error). 

Given some other recent chatter in the project, I'm left wondering: what 

We've long considered Thrift to be a very useful tool, but extremely 
scary to upgrade. I think this is just another sign of this. This leaves 
me asking, how do we fix this? 

Best as I understand it, Thrift is still a relatively active project (at 
least their mailing list archives shows it). My impression is that the 
Java library is much less-so. Most of our issues to me that they 
ultimately stem from incompatibilities between libthrift versions and 
uncaught performance regressions. 

Assuming that to be true, do we need to make a coordinated effort to 
improve the upstream libthrift code? Become a part of their community, 
focusing on preventing these sorts of issues from ever filtering down to 
us? Help them generate and follow compatibility guidelines? 

I feel like our strategy over the past few years has been to "avert your 
eyes" -- if we don't touch it, it'll hopefully be ok. Perhaps we need to 
try something new. Thoughts? 

- Josh 

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message