0

我在我的项目中使用 riak erlang 客户端,并且今天将 riak 和客户端库从 master 更新(客户端到 1.3.1,服务器到 1.2.0)。除了使用 map-reduce 返回空来获取多个实体之外,一切正常。{ok, [...,{<stage_number>,<stage result>},...]}我得到的不是通常的结果{ok,[]}。与客户端回滚,一切正常。但是,如果我将旧客户端与新 riak 一起使用,我在服务器日志中会出现很多错误。

这是一个代码示例,其中 BK 是对列表,{Bucket, Key}每对都与现有实体相关:

{ok, [{0,Result}]}=riakc_pb_socket:mapred(Pid, BK,[{map, {modfun, riak_kv_mapreduce, map_object_value},undefined, true}])

如何更改该行代码以使其正常工作?

4

1 回答 1

0

对我来说它工作正常:

(app@blinkov)10> riakc_pb_socket:mapred(Pid, BK,[{map, {modfun, riak_kv_mapreduce, map_object_value},undefined, true}]).
  {ok,[{0, 
      [<<131,108,0,0,0,16,104,2,100,0,9,112,111,115,116,95,116,
         101,120,116,109,0,0,...>>,
       <<131,108,0,0,0,16,104,2,100,0,9,112,111,115,116,95,
         116,101,120,116,109,0,...>>]}]}

还有 1.3.1 和 1.2.0 各自的版本。

于 2012-11-01T02:50:38.247 回答