Solr Dismax奇怪的行为

时间:2012-03-02 09:55:37

标签: solr lucene

关于“defType”的奇怪行为。任何线索都将受到赞赏。

查询1:http://localhost:8085/solr/select/?q=abc&version=2.2&start=0&rows=10&indent=on&defType=dismax [带有大写字母T的defType - 无法获取结果]

查询2:http://localhost:8085/solr/select/?q=abc&version=2.2&start=0&rows=10&indent=on&deftype=dismax [带小T的defType - 完美,返回结果]

在上面的查询中,我删除了增强部分,因为我使用的是dismax。而且在放置提升的东西时,它是另一种方式,deftype以大写T返回,并且不会以小T返回。

2 个答案:

答案 0 :(得分:2)

Solr不知道deftype参数,因此当您使用此参数时,Solr实际上使用默认查询解析器,该解析器搜索默认搜索字段(请参阅schema.xml)并且不支持提升的盒子。

您应该打开debugQuery以查看您的查询是如何使用dixmax解析的,以及它与使用Solr默认查询解析器生成的查询的不同之处。

答案 1 :(得分:0)

只需说明问题所在:defType=dismax没问题,而deftype=dismax无效,因为deftype不是有效的Solr参数。