diff --git a/lucene/queries/src/java/org/apache/lucene/queries/CommonTermsQuery.java b/lucene/queries/src/java/org/apache/lucene/queries/CommonTermsQuery.java index 53ed403fdfe..3e96a31fb96 100644 --- a/lucene/queries/src/java/org/apache/lucene/queries/CommonTermsQuery.java +++ b/lucene/queries/src/java/org/apache/lucene/queries/CommonTermsQuery.java @@ -257,8 +257,6 @@ public class CommonTermsQuery extends Query { * Returns true iff {@link Similarity#coord(int,int)} is disabled in scoring * for the high and low frequency query instance. The top level query will * always disable coords. - * - * @see #CommonTermsQuery(Occur, Occur, float, boolean) */ public boolean isCoordDisabled() { return disableCoord; diff --git a/lucene/queries/src/test/org/apache/lucene/queries/CommonTermsQueryTest.java b/lucene/queries/src/test/org/apache/lucene/queries/CommonTermsQueryTest.java index c551de72fb5..7571753248d 100644 --- a/lucene/queries/src/test/org/apache/lucene/queries/CommonTermsQueryTest.java +++ b/lucene/queries/src/test/org/apache/lucene/queries/CommonTermsQueryTest.java @@ -263,7 +263,6 @@ public class CommonTermsQueryTest extends LuceneTestCase { } TopDocs cqSearch = searcher.search(cq, reader.maxDoc()); - QueryUtils.check(random(), cq, searcher); TopDocs verifySearch = searcher.search(verifyQuery, reader.maxDoc()); assertEquals(verifySearch.totalHits, cqSearch.totalHits); @@ -277,6 +276,17 @@ public class CommonTermsQueryTest extends LuceneTestCase { } assertTrue(hits.isEmpty()); + + /* + * need to force merge here since QueryUtils adds checks based + * on leave readers which have different statistics than the top + * level reader if we have more than one segment. This could + * result in a different query / results. + */ + w.forceMerge(1); + DirectoryReader reader2 = w.getReader(); + QueryUtils.check(random(), cq, newSearcher(reader2)); + reader2.close(); } finally { reader.close(); wrapper.close();