Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
1.4.1, 3.2, 3.3
-
None
-
Linux.
Reproduced in different machines with different Linux distributions and different JDK's.
Solr 3.3 and Lucidworks for solr 1.4.1 and 3.2.
Description
I need to issue a dismax query, with date boost (I'd like to use the multiplicative boost provided by boost queries) and also filtering for other fields with too many possible distinct values to fit in a filter query. To achieve this, I use the boost query as a nested query using the pseudofield query. I also need highlighting for the fields used in the dismax query, but highlighting does not work. If I just use the boosted dismax query without embedding it inside another query, it works correctly. If I use bf instead of a boost query, and embed directly the dismax query, it works too, but hl.fl needs to be specified.
It's a bit complicated to explain, so, I'll give examples using the example data that comes with solr (the problem is reproducible in the example solr distribution, not only in my concrete project).
http://localhost:8983/solr/select?q=%2binStock:true%20%2b_query_:%22
{!boost%20b=$dateboost%20v=$qq%20defType=dismax}%22&qq=test&qf=name&dateboost=recip%28ms%28NOW,last_modified%29,3.16e-11,1,1%29&hl=true&hl.fl=nameFor this query, highlighting does not work. Specifying hl.fl or not, does not influence the result. The result is:
<lst name="highlighting">
<lst name="GB18030TEST"/>
<lst name="UTF8TEST"/>
</lst>
http://localhost:8983/solr/select?q=_query_:%22{!boost%20b=$dateboost%20v=$qq%20defType=dismax}
%22&qq=test&qf=name&dateboost=recip%28ms%28NOW,last_modified%29,3.16e-11,1,1%29&hl=true&hl.fl=name
This doesn't work either. Same result.
http://localhost:8983/solr/select?q=
{!boost b=$dateboost v=$qq defType=dismax}&qq=test&qf=name&dateboost=recip(ms(NOW,last_modified),3.16e-11,1,1)&hl=true
In this case, hightlighting works correctly:
<lst name="highlighting">
<lst name="GB18030TEST">
<arr name="name">
<str><em>Test</em> with some GB18030 encoded characters</str>
</arr>
</lst>
<lst name="UTF8TEST">
<arr name="name">
<str><em>Test</em> with some UTF-8 encoded characters</str>
</arr>
</lst>
</lst>
http://localhost:8983/solr/select?q=%2BinStock:true%20%2B_query_:%22
{!dismax%20v=$qq}%22&qq=test&qf=name&bf=recip%28ms%28NOW,last_modified%29,3.16e-11,1,1%29&hl=true&hl.fl=name
This also works. Same result as before. But in this case hl.fl is needed. Without it, highlighting does not work, either.
Thanks.
Attachments
Issue Links
- relates to
-
SOLR-1926 add hl.q parameter
- Closed