There are currently three methods to analyze multiterms in Lucene and Solr:
- QueryParserBase
- AnalyzingQueryParser
- 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 #6269.
Migrated from LUCENE-5470 by Tim Allison (@tballison), 1 vote, updated Apr 09 2014
Attachments: LUCENE-5470_QBuilder.patch, LUCENE-5470_QPBase.patch, LUCENE-5470.patch
There are currently three methods to analyze multiterms in Lucene and 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 #6269.
Migrated from LUCENE-5470 by Tim Allison (@tballison), 1 vote, updated Apr 09 2014
Attachments: LUCENE-5470_QBuilder.patch, LUCENE-5470_QPBase.patch, LUCENE-5470.patch