Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
3.4, 4.0-ALPHA
-
None
-
New, Patch Available
Description
The standard query parser uses the default query operator for query clauses that are created from tokenization in the query parser instead of the actual operator for the source term.
here is an example:
StandardQueryParser parser = new StandardQueryParser(new StandardAnalyzer(Version.LUCENE_34)); parser.setDefaultOperator(Operator.OR); System.out.println(((BooleanQuery)parser.parse("_deleted:true AND title:東京", "f")));
this should yield:
+_deleted:true +(title:東 title:京)
as our former core query parser does but actually yields:
+_deleted:true title:東 title:京
seems like a bug to me, looking at the tests seems we don't test for this kind of queries in the standard query parser tests too.