Solr edismax qf和pf默认无法提升字段

时间:2014-07-18 21:10:57

标签: solr lucene solrj

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

<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界面/管理界面并进行搜索时,我得到相同的结果。但是,如果我明确选中edismax复选框并在qfpf框中输入字段提升数据,我会得到结果和我期望的权重。

事实上,我也尝试将rows值更改为5并仍然收到相同的结果。看起来我的查询不是由/select处理程序处理的,即使这是我在solr Admin UI中选择的内容以及当我创建HttpSolrServer对象来执行查询时服务器。

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

1 个答案:

答案 0 :(得分:0)

检查solrconfig中的设置

<requestDispatcher handleSelect="false" >

如果要将select用作请求处理程序,则需要

 <requestDispatcher handleSelect="true" >