[ 
https://issues.apache.org/jira/browse/SOLR-9174?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15308589#comment-15308589
 ] 

Jan Høydahl commented on SOLR-9174:
-----------------------------------

There is a long history here. Back in the days, (e)dismax did only care about 
{{mm}}, which defaulted to {{100%}}. Then people got confused when they had 
{{q.op=OR}} or {{defaultOperator=OR}} in the schema, so we added some logic 
{{if q.op==OR then mm=0 else mm=100%}} which kicked in *if user did not 
explicitly set mm*.

But then there was the case of explicit operators in the query, which pre-5.5 
used to ignore {{mm}} completely, see SOLR-2649. So in 5.5 we tried to solve 
that one, changing the interaction between {{q.op}} and {{mm}} a bit, leading 
to SOLR-8812, and perhaps also the root case for this issue?

> After Solr 5.5, mm parameter doesn't work properly
> --------------------------------------------------
>
>                 Key: SOLR-9174
>                 URL: https://issues.apache.org/jira/browse/SOLR-9174
>             Project: Solr
>          Issue Type: Bug
>          Components: query parsers, search
>    Affects Versions: 5.5, 6.0, 6.0.1
>            Reporter: Issei Nishigata
>
> “mm" parameter does not work properly, when I set "q.op=AND” after Solr 5.5.
> In Solr 5.4, mm parameter works expectedly with the following setting.
> [schema]
> {code:xml}
> <fieldType name="bi_gram" class="solr.TextField">
>   <analyzer>
>     <tokenizer class="solr.NGramTokenizerFactory" minGramSize="2" 
> maxGramSize="2"/>
>   </analyzer>
> </fieldType>
> {code}
> [request]
> {quote}
> http://localhost:8983/solr/collection1/select?defType=edismax&q.op=AND&mm=2&q=solar
> {quote}
> After Solr 5.5, the result will not be the same as Solr 5.4.
> [Solr 5.4]
> {code:xml}
> <response>
> ...
>   <lst name="params">
>     <str name="mm">2</str>
>     <str name="q">solar</str>
>     <str name="defType">edismax</str>
>     <str name="q.op">AND</str>
>   </lst>
> ...
> <result name="response" numFound="1" start="0">
>   <doc>
>     <str name="id">0</str>
>     <arr name="content">
>       <str>solr</str>
>     </arr>
>   </doc>
> </result>
> <lst name="debug">
>   <str name="rawquerystring">solar</str>
>   <str name="querystring">solar</str>
>   <str name="parsedquery">
>   (+DisjunctionMaxQuery((((text:so text:ol text:la text:ar)~2))))/no_coord
>   </str>
>   <str name="parsedquery_toString">+(((text:so text:ol text:la 
> text:ar)~2))</str>
>   ...
> </response>
> {code}
> [Solr 6.0.1]
> {code:xml}
> <response>
> ...
>   <lst name="params">
>     <str name="mm">2</str>
>     <str name="q">solar</str>
>     <str name="defType">edismax</str>
>     <str name="q.op">AND</str>
>   </lst>
> ...
> <result name="response" numFound="0" start="0"/>
>   <lst name="debug">
>     <str name="rawquerystring">solar</str>
>     <str name="querystring">solar</str>
>     <str name="parsedquery">
>     (+DisjunctionMaxQuery(((+text:so +text:ol +text:la +text:ar))))/no_coord
>     </str>
>     <str name="parsedquery_toString">+((+text:so +text:ol +text:la 
> +text:ar))</str>
> ...
> {code}
> As shown above, parsedquery also differs from Solr 5.4 and Solr 6.0.1(after 
> Solr 5.5).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to