I am using currently erlang native client and it is working beautifully so far. I wanted to move it to pb client due to 1. it is kind of pain to update relevant binaries 2. bidirectional network connection with riak nodes and my application nodes and associated load etc to the system 3. dependency of config like erl riak cookie etc
But In my preliminary study, found that, a) PB client always sends value as binary b) PB server always stores the value as such no matter what kind of content type set ex. "application/x-erlang-term" And item (b) is problem for me because my entire app has may MR queries and other object retrieval which directly consumes erlang terms. So I need to go everywhere (though, It is just one DB module and another module with many M-R functions) to change the binary to term or should I tweek riakc_pb:erlify_rpbcontent to convert binary to term and store it -- may be based on Content-Type? This sounds ugly but I just need to change it only once without affecting my entire code base. If I do so, wherever I get the object from Riak, I no need to convert it, it saves unnecessary decoding also. PB binaries stored in riak also affect the riak:local client retrieval where we can get the object and see it in plain without doing binary_to_term. My app is webmachine erlang web app. Thoughts? Thanks, --Senthilkumar Peelikkampatti.
_______________________________________________ riak-users mailing list riak-users@lists.basho.com http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com