Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-9174

After Solr 5.5, mm parameter doesn't work properly

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 5.5, 6.0, 6.0.1
    • Fix Version/s: None
    • Component/s: query parsers, search
    • Labels:
      None

      Description

      “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]

      <fieldType name="bi_gram" class="solr.TextField">
        <analyzer>
          <tokenizer class="solr.NGramTokenizerFactory" minGramSize="2" maxGramSize="2"/>
        </analyzer>
      </fieldType>
      

      [request]

      http://localhost:8983/solr/collection1/select?defType=edismax&q.op=AND&mm=2&q=solar

      After Solr 5.5, the result will not be the same as Solr 5.4.

      [Solr 5.4]

      <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>
      

      [Solr 6.0.1]

      <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>
      ...
      

      As shown above, parsedquery also differs from Solr 5.4 and Solr 6.0.1(after Solr 5.5).

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                issei2029 Issei Nishigata
              • Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated: