[ 
https://issues.apache.org/jira/browse/LUCENE-5470?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tim Allison updated LUCENE-5470:
--------------------------------

    Attachment: LUCENE-5470_QPBase.patch
                LUCENE-5470_QBuilder.patch

Two patches.  One consolidates analysis in QueryBuilder and one consolidates it 
in QueryParserBase.

I've added a check for position increment.  I don't think this will create 
false exceptions, but let me know if anyone thinks otherwise.

If we go with QueryBuilder, I'm not held to static.

> Refactoring multiterm analysis
> ------------------------------
>
>                 Key: LUCENE-5470
>                 URL: https://issues.apache.org/jira/browse/LUCENE-5470
>             Project: Lucene - Core
>          Issue Type: Bug
>          Components: core/queryparser
>    Affects Versions: 5.0
>            Reporter: Tim Allison
>            Priority: Minor
>         Attachments: LUCENE-5470.patch, LUCENE-5470_QBuilder.patch, 
> LUCENE-5470_QPBase.patch
>
>
> There are currently three methods to analyze multiterms in Lucene and Solr:
> 1) QueryParserBase
> 2) AnalyzingQueryParser
> 3) TextField (Solr)
> The code in QueryParserBase and in TextField do not consume the tokenstream 
> if more than one token is generated by the analyzer.  (Admittedly, thanks to 
> the magic of MultitermAwareComponents in Solr, this type of exception 
> probably never happens and the unconsumed stream problem is probably 
> non-existent in Solr.)
> I propose consolidating the multiterm analysis code into one place: 
> QueryBuilder in Lucene core.
> This is part of a refactoring that will also help reduce duplication of code 
> with LUCENE-5205.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to