Brad Sumersford created SOLR-12532:
--------------------------------------

             Summary: Slop specified in query string is not preserved for 
certain phrase searches
                 Key: SOLR-12532
                 URL: https://issues.apache.org/jira/browse/SOLR-12532
             Project: Solr
          Issue Type: Bug
      Security Level: Public (Default Security Level. Issues are Public)
          Components: query parsers
    Affects Versions: 7.4
            Reporter: Brad Sumersford


Note: This only impacts specific settings for the 
WordDelimiterGraphFilterFactory as detailed below.  

When a phrase search is parsed by the SolrQueryParser, and the phrase search 
results in a graph token stream, the resulting SpanNearQuery created does not 
have the slop correctly set.

h4. Conditions

- Slop provided in query string (ex: ~2")
- WordDelimiterGraphFilterFactory with query time preserveOriginal and 
generateWordParts
- query string includes a term that contains a word delimiter 

h4. Example

Field: wdf_partspreserve 
--  WordDelimiterGraphFilterFactory 
---- preserveOriginal="1"
---- generateWordParts="1"  

Data: you just can't
Search: wdf_partspreserve:"you can't"~2 -> 0 Results

h4. Cause

The slop supplied by the query string is applied in 
SolrQueryParserBase#getFieldQuery which will set the slop only for PhraseQuery 
and MultiPhaseQuery.  Since "can't" will be broken down into multiple tokens 
analyzeGraphPhrase will be triggered when the Query is being constructed which 
will return a SpanNearQuery instead of a (Multi)PhraseQuery.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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

Reply via email to