【问题标题】:Riak mapreduce function map_object_value return empty result on erlang pb clientRiak mapreduce函数map_object_value在erlang pb客户端返回空结果
【发布时间】:2012-10-05 13:26:13
【问题描述】:

我在我的项目中使用 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}])

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

【问题讨论】:

    标签: erlang mapreduce riak


    【解决方案1】:

    对我来说效果很好:

    (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 各自的版本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-05
      • 2011-03-06
      • 1970-01-01
      • 1970-01-01
      • 2013-04-03
      • 2015-01-02
      • 2014-07-23
      • 1970-01-01
      相关资源
      最近更新 更多