以编程方式更改Riak的Solr max返回的行

时间:2019-06-22 14:00:42

标签: riak riak-search

我将Riak用作Elixir应用程序的内部令牌存储。这些令牌通常具有有限的生命周期(例如5分钟),并且我有一个清除过程,该过程会搜索过期的令牌然后将其删除。

我在到期时间字段上使用自定义索引:

<dynamicField name="*_int_register" type="int"  indexed="true" stored="true" multiValued="false"/>

在应用程序启动时以编程方式创建桶,架构和索引。

但是我注意到使用搜索时最多返回10个结果:

iex> Riak.Search.query("asteroid_token_store_device_code_riak_index", "exp_int_register:*")
{:ok,
 {:search_results,
  [
    {"asteroid_token_store_device_code_riak_index",
     [
       {"score", "1.00000000000000000000e+00"},
       {"_yz_rb", "device_code"},
       {"_yz_rt", "ephemeral_token"},
       {"_yz_rk", "pbvWQLGRIym0e3ZpTujHEE831gcIgptUfeZE6YmcdHA"},
       {"_yz_id",
        "1*ephemeral_token*device_code*pbvWQLGRIym0e3ZpTujHEE831gcIgptUfeZE6YmcdHA*11"},
       {"exp_int_register", "1561199750"},
       {"refresh_token_id_register", "CRJ435CQ"}
     ]},
   # 9 other results

Solr的默认行为是返回10个结果。更具体地说,创建的solrconfig.xml包含以下设置:

  <requestHandler name="/select" class="solr.SearchHandler">
     <lst name="defaults">
       <str name="echoParams">explicit</str>
       <int name="rows">10</int>
     </lst>
     <!-- Custom Yokozuna component to translate custom shard filter
          queries. -->
     <arr name="first-components">
       <str>fq_shard_translator</str>
     </arr>
    </requestHandler>

是仅返回10个条目的原因吗?是否可以使用Erlang或Elixir Riak客户库以编程方式更改此值?

0 个答案:

没有答案