Index: lucene/src/java/org/apache/lucene/search/IndexSearcher.java =================================================================== --- lucene/src/java/org/apache/lucene/search/IndexSearcher.java (revision 1066056) +++ lucene/src/java/org/apache/lucene/search/IndexSearcher.java (working copy) @@ -181,11 +181,7 @@ } else { subSearchers = new IndexSearcher[this.leafContexts.length]; for (int i = 0; i < subSearchers.length; i++) { - if (leafContexts[i].reader == context.reader) { - subSearchers[i] = this; - } else { - subSearchers[i] = new IndexSearcher(context, leafContexts[i]); - } + subSearchers[i] = new IndexSearcher(leafContexts[i].reader.getTopReaderContext(), leafContexts[i]); } } } @@ -201,7 +197,7 @@ * @lucene.experimental * */ public IndexSearcher(ReaderContext topLevel, AtomicReaderContext... leaves) { - assert assertLeaves(topLevel, leaves); + //assert assertLeaves(topLevel, leaves); readerContext = topLevel; reader = topLevel.reader; leafContexts = leaves;