Where is the Thrift format specification?

StaxMan picture StaxMan · Feb 15, 2011 · Viewed 10.4k times · Source

Although Thrift format is relatively widely used (and project still alive), I haven't been able to find specification for the underlying data format. Or formats, given that there are apparently at least two formats; standard one, and compact format.

Given its wide usage I am hoping it is just my poor google-fu, and a specification or specifications exist (outside of source code). If so, please share!

EDIT: Java source code is not too bad for figuring out format; see TBinaryProtocol.java and TCompactBinaryProtocol.java; which contain primitives, called by generated classes (which extend TBase)

EDIT2: While it does not contain format spec, "the missing guide" is good reading.

Answer

Erik van Oosten picture Erik van Oosten · Oct 4, 2016

I had the same problem and therefore decided to write a specification of the Thrift binary and compact protocol.

You can find it here: https://erikvanoosten.github.io/thrift-missing-specification/