【问题标题】:Solr edismax qf and pf defaults not working to boost fieldsSolr edismax qf 和 pf 默认值无法提升字段
【发布时间】:2014-07-18 21:10:57
【问题描述】:

我正在尝试设置一个请求处理程序,它将某些字段提升不同的数量。我有以下请求处理程序。

<requestHandler name="/select" class="solr.SearchHandler" default="true">
 <lst name="defaults">
   <str name="echoParams">explicit</str>
   <str name="start">0</str>
   <int name="rows">10</int>
   <str name="defType">edismax</str>
   <str name="qf">
      title^50.0 searchTitle^7.0 keywords^5.0 content^1.0 text^1.0
   </str>
   <str name="pf">
      title^50.0 searchTitle^7.0 keywords^5.0 content^1.0 text^1.0
   </str>
   <str name="df">text</str>
 </lst>    
</requestHandler>

但是,字段没有被正确提升,如果有的话。我注意到在title 字段中带有搜索词的文档的显示并不比在text 字段中带有搜索词的文档高。任意重新排列权重每次都会产生相同的文档顺序。

当我进入 solr Web 界面/管理 UI 并进行搜索时,我得到了相同的结果。但是,如果我明确选中edismax 复选框并在qfpf 框中输入字段提升数据,我会得到我期望的结果和权重。

事实上,我也只是尝试将rows 的值更改为 5,但仍然收到相同的结果。看起来我的查询没有由 /select 处理程序处理,尽管这是我在 solr 管理 UI 和创建 HttpSolrServer 对象以从服务器执行查询时选择的。

我正在使用 solr v4.8.0。
任何帮助将不胜感激。

【问题讨论】:

    标签: solr lucene solrj


    【解决方案1】:

    检查 solrconfig 中的设置

    <requestDispatcher handleSelect="false" >
    

    如果你想使用 select 作为请求处理程序,这需要

     <requestDispatcher handleSelect="true" >
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-24
      相关资源
      最近更新 更多