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

two terms in brackets interpreted as range query

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Not A Problem
    • 5.2.1
    • None
    • query parsers
    • None

    Description

      Queries with two strings between brackets are parsed as range queries even when missing the " TO " keyword. This creates performance problems from extremely expensive unintended range queries.

      Example: [string1 string2]
      "rawquerystring": "[string1 string2]",
      "querystring": "[string1 string2]",
      "parsedquery": "(+DisjunctionMaxQuery((text:[string1 TO string2])))/no_coord",
      "parsedquery_toString": "+(text:[string1 TO string2])",
      "explain": {},
      "QParser": "ExtendedDismaxQParser"

      Same behavior for LuceneQParser:
      "rawquerystring": "[string1 string2]",
      "querystring": "[string1 string2]",
      "parsedquery": "text:[string1 TO string2]",
      "parsedquery_toString": "text:[string1 TO string2]",
      "explain": {},
      "QParser": "LuceneQParser"

      Three strings between brackets is parsed correctly by ExtendedDismaxQParser:
      "rawquerystring": "[string1 string2 string3]",
      "querystring": "[string1 string2 string3]",
      "parsedquery": "(+(DisjunctionMaxQuery((text:string1)) DisjunctionMaxQuery((text:string2)) DisjunctionMaxQuery((text:string3))))/no_coord",
      "parsedquery_toString": "+((text:string1) (text:string2) (text:string3))",
      "explain": {},
      "QParser": "ExtendedDismaxQParser"

      Query examples from live search application (copy and pasted book titles):
      The biology of cancer [electronic resource]
      Prostate cancer principles and practice. [1st ed.]

      Attachments

        Activity

          People

            Unassigned Unassigned
            ryanmax Ryan Steinberg
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: