【发布时间】: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 复选框并在qf 和pf 框中输入字段提升数据,我会得到我期望的结果和权重。
事实上,我也只是尝试将rows 的值更改为 5,但仍然收到相同的结果。看起来我的查询没有由 /select 处理程序处理,尽管这是我在 solr 管理 UI 和创建 HttpSolrServer 对象以从服务器执行查询时选择的。
我正在使用 solr v4.8.0。
任何帮助将不胜感激。
【问题讨论】: