Riak mapreduce function map_object_value return empty result on erlang pb client

Bryan Fink bryan at basho.com
Mon Oct 15 14:41:47 EDT 2012


On Mon, Oct 15, 2012 at 12:34 PM, Mikhail Kuznetsov
<kuznetsov.m.yu at gmail.com> wrote:
> We fixed it, but I am very angry…

I agree. Breaking APIs without announcement is not okay. In this case,
I don't think it was intentional. Instead, I think we just didn't know
we broke this until your message arrived. In the latest version, we
changed get_index to use a new protocol buffer message instead of
piggy-backing on the MapReduce message. At the time this change was
made, no tests covered riakc_pb_socket:get_index:

https://github.com/basho/riak-erlang-client/blob/a33a677e393b90c88af2c05f4178984e3b634302/src/riakc_pb_socket.erl#L1398-2307

Without tests in place, we missed the fact that we changed the API. I
hope it improves your outlook to know that tests for get_index are now
included in the new riak_test project:

https://github.com/basho/riak_test/blob/master/tests/secondary_index_tests.erl

So, this kind of unknown, unexpected breakage should not happen again.

Thanks for spending time tracking this down, and sending in the report.

-Bryan




More information about the riak-users mailing list