You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by us...@apache.org on 2012/01/29 20:09:10 UTC

svn commit: r1237418 - in /lucene/dev/branches/lucene2858/lucene/src/test/org/apache/lucene/search: TestShardSearching.java TestTopDocsMerge.java

Author: uschindler
Date: Sun Jan 29 19:09:10 2012
New Revision: 1237418

URL: http://svn.apache.org/viewvc?rev=1237418&view=rev
Log:
LUCENE-2858: Fix remaining tests.

Modified:
    lucene/dev/branches/lucene2858/lucene/src/test/org/apache/lucene/search/TestShardSearching.java
    lucene/dev/branches/lucene2858/lucene/src/test/org/apache/lucene/search/TestTopDocsMerge.java

Modified: lucene/dev/branches/lucene2858/lucene/src/test/org/apache/lucene/search/TestShardSearching.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2858/lucene/src/test/org/apache/lucene/search/TestShardSearching.java?rev=1237418&r1=1237417&r2=1237418&view=diff
==============================================================================
--- lucene/dev/branches/lucene2858/lucene/src/test/org/apache/lucene/search/TestShardSearching.java (original)
+++ lucene/dev/branches/lucene2858/lucene/src/test/org/apache/lucene/search/TestShardSearching.java Sun Jan 29 19:09:10 2012
@@ -22,6 +22,7 @@ import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 
+import org.apache.lucene.index.CompositeIndexReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.MultiFields;
 import org.apache.lucene.index.MultiReader;
@@ -310,7 +311,7 @@ public class TestShardSearching extends 
 
     final int numNodes = shardSearcher.nodeVersions.length;
     int[] base = new int[numNodes];
-    final IndexReader[] subs = mockSearcher.getIndexReader().getSequentialSubReaders();
+    final IndexReader[] subs = ((CompositeIndexReader) mockSearcher.getIndexReader()).getSequentialSubReaders();
     assertEquals(numNodes, subs.length);
 
     int docCount = 0;

Modified: lucene/dev/branches/lucene2858/lucene/src/test/org/apache/lucene/search/TestTopDocsMerge.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2858/lucene/src/test/org/apache/lucene/search/TestTopDocsMerge.java?rev=1237418&r1=1237417&r2=1237418&view=diff
==============================================================================
--- lucene/dev/branches/lucene2858/lucene/src/test/org/apache/lucene/search/TestTopDocsMerge.java (original)
+++ lucene/dev/branches/lucene2858/lucene/src/test/org/apache/lucene/search/TestTopDocsMerge.java Sun Jan 29 19:09:10 2012
@@ -25,6 +25,8 @@ import org.apache.lucene.document.Docume
 import org.apache.lucene.document.NumericField;
 import org.apache.lucene.document.StringField;
 import org.apache.lucene.document.TextField;
+import org.apache.lucene.index.AtomicIndexReader;
+import org.apache.lucene.index.CompositeIndexReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.RandomIndexWriter;
 import org.apache.lucene.index.Term;
@@ -36,11 +38,11 @@ import org.apache.lucene.util._TestUtil;
 public class TestTopDocsMerge extends LuceneTestCase {
 
   private static class ShardSearcher extends IndexSearcher {
-    private final IndexReader.AtomicReaderContext[] ctx;
+    private final AtomicIndexReader.AtomicReaderContext[] ctx;
 
-    public ShardSearcher(IndexReader.AtomicReaderContext ctx, IndexReader.ReaderContext parent) {
+    public ShardSearcher(AtomicIndexReader.AtomicReaderContext ctx, CompositeIndexReader.CompositeReaderContext parent) {
       super(parent);
-      this.ctx = new IndexReader.AtomicReaderContext[] {ctx};
+      this.ctx = new AtomicIndexReader.AtomicReaderContext[] {ctx};
     }
 
     public void search(Weight weight, Collector collector) throws IOException {
@@ -116,20 +118,25 @@ public class TestTopDocsMerge extends Lu
     // NOTE: sometimes reader has just one segment, which is
     // important to test
     final IndexSearcher searcher = newSearcher(reader);
-    IndexReader[] subReaders = searcher.getIndexReader().getSequentialSubReaders();
-    if (subReaders == null) {
-      subReaders = new IndexReader[] {searcher.getIndexReader()};
-    }
-    final ShardSearcher[] subSearchers = new ShardSearcher[subReaders.length];
     final IndexReader.ReaderContext ctx = searcher.getTopReaderContext();
 
-    if (ctx instanceof IndexReader.AtomicReaderContext) {
-      assert subSearchers.length == 1;
-      subSearchers[0] = new ShardSearcher((IndexReader.AtomicReaderContext) ctx, ctx);
+    final ShardSearcher[] subSearchers;
+    final int[] docStarts;
+    
+    if (ctx instanceof AtomicIndexReader.AtomicReaderContext) {
+      subSearchers = new ShardSearcher[1];
+      docStarts = new int[1];
+      subSearchers[0] = new ShardSearcher((AtomicIndexReader.AtomicReaderContext) ctx, null);
+      docStarts[0] = 0;
     } else {
-      final IndexReader.CompositeReaderContext compCTX = (IndexReader.CompositeReaderContext) ctx;
+      final CompositeIndexReader.CompositeReaderContext compCTX = (CompositeIndexReader.CompositeReaderContext) ctx;
+      subSearchers = new ShardSearcher[compCTX.leaves().length];
+      docStarts = new int[compCTX.leaves().length];
+      int docBase = 0;
       for(int searcherIDX=0;searcherIDX<subSearchers.length;searcherIDX++) { 
-        subSearchers[searcherIDX] = new ShardSearcher(compCTX.leaves[searcherIDX], compCTX);
+        subSearchers[searcherIDX] = new ShardSearcher(compCTX.leaves()[searcherIDX], compCTX);
+        docStarts[searcherIDX] = docBase;
+        docBase += compCTX.leaves()[searcherIDX].reader().maxDoc();
       }
     }
 
@@ -145,14 +152,6 @@ public class TestTopDocsMerge extends Lu
     sortFields.add(new SortField(null, SortField.Type.DOC, true));
     sortFields.add(new SortField(null, SortField.Type.DOC, false));
 
-    final int[] docStarts = new int[subSearchers.length];
-    int docBase = 0;
-    for(int subIDX=0;subIDX<docStarts.length;subIDX++) {
-      docStarts[subIDX] = docBase;
-      docBase += subReaders[subIDX].maxDoc();
-      //System.out.println("docStarts[" + subIDX + "]=" + docStarts[subIDX]);
-    }
-
     for(int iter=0;iter<1000*RANDOM_MULTIPLIER;iter++) {
 
       // TODO: custom FieldComp...