A Warning About Apache Thrift's Asynchronous Clients

Learning Hadoop and Spark?

I've scoured the internet and I think this free Big Data course from UC San Diego is a great way to jump in. It's hosted on Coursera, so you can audit the course for free.

By default if you use the asynchronous client for thrift it will be using a FRAMED transport layer, even though there is no mention of this in the code / docs.

You’ll know this is happening because your server will give you the following error message when it receives an rpc:

org.apache.thrift.protocol.TProtocolException: Missing version in readMessageBegin, old client?

If you have no control over the server code (eg, if you’re using flume), then you’ll have to fall back to the synchronous client, sorry.

Matthew Rathbone's Picture

Matthew Rathbone

CEO of Beekeeper Data. British. Data Nerd. Lucky husband and father. More about me

Join the discussion