Description
As part of OAK-2434 fix we are changing following logic
@Override public boolean visit(FullTextAnd and) { BooleanQuery q = new BooleanQuery(); for (FullTextExpression e : and.list) { Query x = getFullTextQuery(e, analyzer, reader); // Lucene can't deal with "must(must_not(x))" if (x instanceof BooleanQuery) { BooleanQuery bq = (BooleanQuery) x; for (BooleanClause c : bq.clauses()) { q.add(c); } } else { q.add(x, MUST); } } result.set(q); return true; }
With a logic where the query is always added to BooleanQuery without unwrapping. This might affect logic related to comment // Lucene can't deal with "must(must_not)". Currently there is no testcase to check that condition and we are not sure how this change would affect such a check.
So need to add a testcase to document the behaviour for such cases
Attachments
Issue Links
- relates to
-
OAK-2434 Lucene AND query with a complex OR phrase returns incorrect result
- Closed