C++ Riak client?

Sean Cribbs sean at basho.com
Sat Apr 9 11:47:08 EDT 2011


I didn't permanently abandon it, but it was much more fiddly than doing the same thing in pure Ruby.  I have plans to deliver separate "native" Protocol Buffers libraries for MRI and JRuby (at least) in 1.0 of the Ruby client.

Because it's being confused in this conversation, I think it merits clarification -- the "protocol" that is used to talk to Riak and Google's Protocol Buffers are NOT the same thing. Riak uses a simple length- and message-code-prefixed binary protocol, in which the complex messages (ones that have bodies and not just the message code) are serialized via Google's Protocol Buffers.  So, while we don't use the RPC facilities in Google's library, the *serialization format* DOES use Protocol Buffers.

Sorry for the confusion, we'll work to make that clearer in the wiki.

Sean Cribbs <sean at basho.com>
Developer Advocate
Basho Technologies, Inc.
http://basho.com/

On Apr 8, 2011, at 9:17 PM, Scott Gonyea wrote:

> They are the same and you can actually see me plugging into the C++ code here:
> 
> https://github.com/sgonyea/pabst/tree/master/ext
> 
> But as part of an Objective-C library (called ObjFW).  So, the code is actually an Objective-C++ wrapper around the C++ PB code, that exchanges messages with Objective-C code (that hooks into Ruby).
> 
> I believe Sean Cribbs has some initial C++-wrapper code in his Ripple repo...  Though he eventually abandoned it after C++ left him permanently cross-eyed (I think that's why).
> 
> Scott
> 
> On Apr 8, 2011, at 5:20 PM, Mike Oxford wrote:
> 
>> Be careful here..
>> 
>> I do not thing Riak's "protocol buffers" are the same as Google's protocol buffers.
>> Google's does bit-level packing and some other tricks that Riak does not do, even though they both use the ".proto" file extension and very very similar proto semantics.
>> 
>> That said, if they ARE the same, then you can take the .proto files and generate C++ classes, and use the secondary library "protobuf-c" to generate C structs for the wire format.
>> 
>> -mox
>> 
>> On Fri, Apr 8, 2011 at 4:43 PM, David Leimbach <leimy2k at gmail.com> wrote:
>> Spent a little time poking at this today... Kind of surprised that there was no message defined for PingReq or for listing buckets.
>> 
>> I realize these messages really have no usable payload, and just sort of have a tag and length, but for completeness it kind of feels like they should be there.
>> 
>> Of course I'm not a Protocol Buffers expert in any sense, so I can't say whether this is a normal kind of choice or not.
>> 
>> Dave
>> 
>> 
>> On Fri, Apr 8, 2011 at 2:49 PM, Scott Gonyea <scott at aitrus.org> wrote:
>> If we had this then a C-wrapper would be that much more attainable. So, the author of such a lib would be a superstar in my book :).
>> 
>> Sent from my iPhone
>> 
>> On Apr 8, 2011, at 1:46 PM, David Leimbach <leimy2k at gmail.com> wrote:
>> 
>> > I've been writing a bit of code in Haskell to push data to Riak, and the bindings are pretty easy to use (Thanks Brian!), but getting penetration at my company for Haskell is going to take a little time.
>> >
>> > As such I'm just wondering if anyone knows of anyone working on a protocol buffers version of a Riak client in C++, or if this is going to be something I'll have to take on.
>> >
>> > I've found a few generic looking C++ projects that use Boost's asynchronous IO stuff with protocol buffers to make an RPC system, but I'm not sure if any of those are implicitly compatible.
>> >
>> > Guess I'm just looking for a pointer...
>> >
>> > Dave
>> > _______________________________________________
>> > riak-users mailing list
>> > riak-users at lists.basho.com
>> > http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>> 
>> 
>> _______________________________________________
>> riak-users mailing list
>> riak-users at lists.basho.com
>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>> 
>> 
>> _______________________________________________
>> riak-users mailing list
>> riak-users at lists.basho.com
>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
> 
> _______________________________________________
> riak-users mailing list
> riak-users at lists.basho.com
> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.basho.com/pipermail/riak-users_lists.basho.com/attachments/20110409/9994ef0f/attachment.html>


More information about the riak-users mailing list