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

Enhance DisMaxQParserPlugin to support full-Solr syntax and to support alternate escaping strategies.

Attach filesAttach ScreenshotAdd voteVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 1.3
    • 4.9, 6.0
    • search
    • None

    Description

      The DisMaxQParserPlugin has a variety of nice features; chief among them is that is uses the DisjunctionMaxQueryParser. However it imposes limitations on the syntax.

      I've enhanced the DisMax QParser plugin to use a pluggable query string re-writer (via subclass extension) instead of hard-coding the logic currently embedded within it (i.e. the escape nearly everything logic). Additionally, I've made this QParser have a notion of a "simple" syntax (the default) or non-simple in which case some of the logic in this QParser doesn't occur because it's irrelevant (phrase boosting and min-should-max in particular). As part of my work I significantly moved the code around to make it clearer and more extensible. I also chose to rename it to suggest it's role as a parser for user queries.

      Attachment to follow...

      Attachments

        1. AdvancedQParserPlugin.java
          0.8 kB
          David Smiley
        2. AdvancedQParserPlugin.java
          0.8 kB
          David Smiley
        3. DisMaxQParserPlugin.java
          2 kB
          David Smiley
        4. DisMaxQParserPlugin.java
          2 kB
          David Smiley
        5. UserQParser.java
          11 kB
          David Smiley
        6. UserQParser.java
          11 kB
          David Smiley
        7. UserQParser.java-umlauts.patch
          0.9 kB
          Simon Lachinger

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Unassigned Unassigned
            dsmiley David Smiley

            Dates

              Created:
              Updated:

              Slack

                Issue deployment