avro-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mahadev Konar <maha...@yahoo-inc.com>
Subject Re: C bindings for Avro
Date Thu, 23 Apr 2009 06:19:48 GMT
This is great. We in the Zookeeper world would love to have c bindings for
avro. Currently our serialization is based on very primitive form of
recordio (in Hadoop) and we would like to replace it with something like


On 4/22/09 2:46 PM, "Matt Massie" <matt@cloudera.com> wrote:

> Hello Avro Developers-
> I'm interested in contributing to the Avro project and, in particular, C
> bindings.  I thought it would be good to introduce myself and my tentative
> plan for development early on.  Any feedback you can give will be welcomed.
> I plan to start by creating a simple C library for encoding/decoding the
> basic Avro types (using an API very similar to XDR, e.g. avro_int,
> avro_string, avro_bytes, avro_float, avro_void, etc).  Unlike XDR, we also
> need support for things like maps and default values.  In order to make the
> C code as portable as possible and provide for maps, memory pools, sockets,
> etc, I'm going to use the Apache Portable Runtime (APR).  Not to be too much
> of a suckup here on an Apache list, but I've had really good results with
> APR. :)  Ganglia has been running on APR for over four years now and it made
> supporting dozens of different platforms bareable.
> My initial target will be to create a C protocol compiler using the Java
> code already in Avro now (in the "specific" directory).  The auto-generated
> code will need to be linked against libavro (with the base types) and
> libapr-1 (for maps, pools, sockets, etc).  While I understand that dynamic
> typing is a goal (and strength) of Avro it that will have to wait for C
> until later.  This initial work should help make dynamic typing a
> possibility later though.
> Does this sound like a reasonable plan?  Should I continue pushing forward
> on this or should I wait until Avro spec tightens up a little more?
> Thanks for any feedback you might have.
> Cheers!
> -Matt

View raw message