| diff -r a644c5b44d09 lucene/src/java/org/apache/lucene/search/BooleanQuery.java |
| --- a/lucene/src/java/org/apache/lucene/search/BooleanQuery.java Tue Sep 07 16:04:54 2010 +0000 |
| +++ b/lucene/src/java/org/apache/lucene/search/BooleanQuery.java Wed Sep 08 06:29:09 2010 -0400 |
| @@ -240,6 +240,11 @@ |
| Weight w = wIter.next(); |
| BooleanClause c = cIter.next(); |
| if (w.scorer(reader, true, true) == null) { |
| + if (c.isRequired()) { |
| + fail = true; |
| + Explanation r = new Explanation(0.0f, "no match on required clause (" + c.getQuery().toString() + ")"); |
| + sumExpl.addDetail(r); |
| + } |
| continue; |
| } |
| Explanation e = w.explain(reader, doc); |