[ https://issues.apache.org/jira/browse/LUCENE-1134?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12559194#action_12559194 ]
Hoss Man commented on LUCENE-1134: ---------------------------------- At first glance, the patch seems right .. but an optimization can probably be made ... if there is only once clause, and minNrShouldMatch is greater then 1, the query can rewrite itself to a "no-op" type query that doesn't match any docs. Actually: BooleanQuery.rewrite can do something like that anytime minNrShouldMath is greater then the number of optional clauses. > BooleanQuery.rewrite does not work properly for minNumberShouldMatch > -------------------------------------------------------------------- > > Key: LUCENE-1134 > URL: https://issues.apache.org/jira/browse/LUCENE-1134 > Project: Lucene - Java > Issue Type: Bug > Components: Search > Affects Versions: 2.4 > Reporter: Shai Erera > Priority: Minor > Attachments: LUCENE-1134.patch > > > BooleanQuery.rewrite does not respect minNumberShouldMatch if the number of > clauses is 1. This causes inconsistencies for the queries "+def" and "+abc > +def", while setting the minNumShouldMatch to '1' for both. > For the first query, results are returned although there are no SHOULD > clauses in the query. > For the second query no results are returned. > The reason lies in the optimization BooleanQuery.rewrite has for one clauses > queries. > Patch included - optimize the query for a single clause only if the > minNumShouldMatch <= 0. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]