You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by mi...@apache.org on 2011/11/12 15:09:33 UTC

svn commit: r1201265 [4/4] - in /lucene/dev/branches/branch_3x: ./ lucene/ lucene/backwards/src/test-framework/org/apache/lucene/index/ lucene/backwards/src/test/org/apache/lucene/index/ lucene/contrib/benchmark/conf/ lucene/contrib/benchmark/src/java/...

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestTermVectorsWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestTermVectorsWriter.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestTermVectorsWriter.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestTermVectorsWriter.java Sat Nov 12 14:09:28 2011
@@ -310,7 +310,7 @@ public class TestTermVectorsWriter exten
 
       document.add(termVectorField);
       writer.addDocument(document);
-      writer.optimize();
+      writer.forceMerge(1);
       writer.close();
 
       IndexReader reader = IndexReader.open(dir, true);
@@ -328,7 +328,7 @@ public class TestTermVectorsWriter exten
 
       Directory[] indexDirs = {new MockDirectoryWrapper(random, new RAMDirectory(dir))};
       writer.addIndexes(indexDirs);
-      writer.optimize();
+      writer.forceMerge(1);
       writer.close();
     }
     dir.close();
@@ -360,7 +360,7 @@ public class TestTermVectorsWriter exten
                                         Field.TermVector.WITH_POSITIONS_OFFSETS);
       document.add(termVectorField);
       writer.addDocument(document);
-      writer.optimize();
+      writer.forceMerge(1);
       writer.close();
 
       IndexReader reader = IndexReader.open(dir, true);
@@ -403,7 +403,7 @@ public class TestTermVectorsWriter exten
     for(int i=0;i<6;i++)
       writer.addDocument(document);
 
-    writer.optimize();
+    writer.forceMerge(1);
     writer.close();
 
     IndexReader reader = IndexReader.open(dir, true);
@@ -437,7 +437,7 @@ public class TestTermVectorsWriter exten
     // Make 2nd segment
     iw.commit();
 
-    iw.optimize();
+    iw.forceMerge(1);
     iw.close();
     dir.close();
   }
@@ -460,14 +460,14 @@ public class TestTermVectorsWriter exten
     // Make first segment
     iw.commit();
 
-    iw.optimize();
+    iw.forceMerge(1);
 
     document.add(newField("tvtest", "a b c", Field.Store.NO, Field.Index.ANALYZED,
         Field.TermVector.YES));
     iw.addDocument(document);
     // Make 2nd segment
     iw.commit();
-    iw.optimize();
+    iw.forceMerge(1);
 
     iw.close();
     dir.close();

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestTermdocPerf.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestTermdocPerf.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestTermdocPerf.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestTermdocPerf.java Sat Nov 12 14:09:28 2011
@@ -22,7 +22,6 @@ import java.io.Reader;
 import java.util.Random;
 
 import org.apache.lucene.analysis.Analyzer;
-import org.apache.lucene.analysis.ReusableAnalyzerBase;
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.Tokenizer;
 import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
@@ -95,7 +94,7 @@ public class TestTermdocPerf extends Luc
       writer.addDocument(doc);
     }
 
-    writer.optimize();
+    writer.forceMerge(1);
     writer.close();
   }
 

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestTermsEnum.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestTermsEnum.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestTermsEnum.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestTermsEnum.java Sat Nov 12 14:09:28 2011
@@ -299,7 +299,7 @@ public class TestTermsEnum extends Lucen
     w.addDocument(doc);
     w.commit();
     w.deleteDocuments(new Term("field", "one"));
-    w.optimize();
+    w.forceMerge(1);
     IndexReader r = w.getReader();
     w.close();
     assertEquals(1, r.numDocs());

Copied: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestThreadedForceMerge.java (from r1201036, lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestThreadedForceMerge.java)
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestThreadedForceMerge.java?p2=lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestThreadedForceMerge.java&p1=lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestThreadedForceMerge.java&r1=1201036&r2=1201265&rev=1201265&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestThreadedForceMerge.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestThreadedForceMerge.java Sat Nov 12 14:09:28 2011
@@ -17,20 +17,18 @@ package org.apache.lucene.index;
  * limitations under the License.
  */
 
-import org.apache.lucene.analysis.MockAnalyzer;
+import java.util.Random;
+
 import org.apache.lucene.analysis.Analyzer;
+import org.apache.lucene.analysis.MockAnalyzer;
 import org.apache.lucene.analysis.MockTokenizer;
-import org.apache.lucene.store.Directory;
 import org.apache.lucene.document.Document;
-import org.apache.lucene.document.FieldType;
-import org.apache.lucene.document.StringField;
+import org.apache.lucene.document.Field;
 import org.apache.lucene.index.IndexWriterConfig.OpenMode;
+import org.apache.lucene.store.Directory;
 import org.apache.lucene.util.English;
-
 import org.apache.lucene.util.LuceneTestCase;
 
-import java.util.Random;
-
 public class TestThreadedForceMerge extends LuceneTestCase {
   
   private static final Analyzer ANALYZER = new MockAnalyzer(random, MockTokenizer.SIMPLE, true);
@@ -63,13 +61,10 @@ public class TestThreadedForceMerge exte
 
       ((LogMergePolicy) writer.getConfig().getMergePolicy()).setMergeFactor(1000);
 
-      final FieldType customType = new FieldType(StringField.TYPE_STORED);
-      customType.setOmitNorms(true);
-      
       for(int i=0;i<200;i++) {
         Document d = new Document();
-        d.add(newField("id", Integer.toString(i), customType));
-        d.add(newField("contents", English.intToEnglish(i), customType));
+        d.add(newField("id", Integer.toString(i), Field.Store.YES, Field.Index.NOT_ANALYZED_NO_NORMS));
+        d.add(newField("contents", English.intToEnglish(i), Field.Store.YES, Field.Index.NOT_ANALYZED_NO_NORMS));
         writer.addDocument(d);
       }
 
@@ -88,8 +83,8 @@ public class TestThreadedForceMerge exte
                 writerFinal.forceMerge(1, false);
                 for(int k=0;k<17*(1+iFinal);k++) {
                   Document d = new Document();
-                  d.add(newField("id", iterFinal + "_" + iFinal + "_" + j + "_" + k, customType));
-                  d.add(newField("contents", English.intToEnglish(iFinal+k), customType));
+                  d.add(newField("id", iterFinal + "_" + iFinal + "_" + j + "_" + k, Field.Store.YES, Field.Index.NOT_ANALYZED_NO_NORMS));
+                  d.add(newField("contents", English.intToEnglish(iFinal+k), Field.Store.YES, Field.Index.NOT_ANALYZED_NO_NORMS));
                   writerFinal.addDocument(d);
                 }
                 for(int k=0;k<9*(1+iFinal);k++)

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestTieredMergePolicy.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestTieredMergePolicy.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestTieredMergePolicy.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestTieredMergePolicy.java Sat Nov 12 14:09:28 2011
@@ -65,7 +65,7 @@ public class TestTieredMergePolicy exten
     dir.close();
   }
 
-  public void testPartialOptimize() throws Exception {
+  public void testPartialMerge() throws Exception {
     int num = atLeast(10);
     for(int iter=0;iter<num;iter++) {
       if (VERBOSE) {
@@ -98,9 +98,9 @@ public class TestTieredMergePolicy exten
       int segmentCount = w.getSegmentCount();
       int targetCount = _TestUtil.nextInt(random, 1, segmentCount);
       if (VERBOSE) {
-        System.out.println("TEST: optimize to " + targetCount + " segs (current count=" + segmentCount + ")");
+        System.out.println("TEST: merge to " + targetCount + " segs (current count=" + segmentCount + ")");
       }
-      w.optimize(targetCount);
+      w.forceMerge(targetCount);
       assertEquals(targetCount, w.getSegmentCount());
 
       w.close();
@@ -117,7 +117,7 @@ public class TestTieredMergePolicy exten
     conf.setMergePolicy(tmp);
 
     final RandomIndexWriter w = new RandomIndexWriter(random, dir, conf);
-    w.setDoRandomOptimize(false);
+    w.setDoRandomForceMerge(false);
 
     final int numDocs = atLeast(200);
     for(int i=0;i<numDocs;i++) {
@@ -127,7 +127,7 @@ public class TestTieredMergePolicy exten
       w.addDocument(doc);
     }
 
-    w.optimize();
+    w.forceMerge(1);
     IndexReader r = w.getReader();
     assertEquals(numDocs, r.maxDoc());
     assertEquals(numDocs, r.numDocs());

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestBooleanQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestBooleanQuery.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestBooleanQuery.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestBooleanQuery.java Sat Nov 12 14:09:28 2011
@@ -25,7 +25,6 @@ import java.util.concurrent.Executors;
 import java.util.concurrent.TimeUnit;
 
 import org.apache.lucene.analysis.MockAnalyzer;
-import org.apache.lucene.analysis.WhitespaceAnalyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
 import org.apache.lucene.index.IndexReader;
@@ -185,7 +184,7 @@ public class TestBooleanQuery extends Lu
       doc.add(new Field("field", contents, Field.Store.NO, Field.Index.ANALYZED));
       w.addDocument(doc);
     }
-    w.optimize();
+    w.forceMerge(1);
     final IndexReader r = w.getReader();
     final IndexSearcher s = newSearcher(r);
     w.close();

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestCachingWrapperFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestCachingWrapperFilter.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestCachingWrapperFilter.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestCachingWrapperFilter.java Sat Nov 12 14:09:28 2011
@@ -19,16 +19,16 @@ package org.apache.lucene.search;
 
 import java.io.IOException;
 
+import org.apache.lucene.analysis.MockAnalyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
-import org.apache.lucene.analysis.MockAnalyzer;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.RandomIndexWriter;
 import org.apache.lucene.index.SerialMergeScheduler;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.store.Directory;
-import org.apache.lucene.util.LuceneTestCase;
 import org.apache.lucene.util.FixedBitSet;
+import org.apache.lucene.util.LuceneTestCase;
 import org.apache.lucene.util._TestUtil;
 
 public class TestCachingWrapperFilter extends LuceneTestCase {
@@ -283,8 +283,8 @@ public class TestCachingWrapperFilter ex
     // doesn't count as a miss
     assertEquals(missCount, filter.missCount);
 
-    // NOTE: silliness to make sure JRE does not optimize
-    // away our holding onto oldReader to prevent
+    // NOTE: silliness to make sure JRE does not eliminate
+    // our holding onto oldReader to prevent
     // CachingWrapperFilter's WeakHashMap from dropping the
     // entry:
     assertTrue(oldReader != null);

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestDisjunctionMaxQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestDisjunctionMaxQuery.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestDisjunctionMaxQuery.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestDisjunctionMaxQuery.java Sat Nov 12 14:09:28 2011
@@ -19,7 +19,6 @@ package org.apache.lucene.search;
 
 import org.apache.lucene.util.LuceneTestCase;
 import org.apache.lucene.analysis.MockAnalyzer;
-import org.apache.lucene.analysis.WhitespaceAnalyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
 import org.apache.lucene.index.IndexReader;
@@ -145,7 +144,7 @@ public class TestDisjunctionMaxQuery ext
       writer.addDocument(d4);
     }
 
-    writer.optimize();
+    writer.forceMerge(1);
     r = writer.getReader();
     writer.close();
     s = newSearcher(r);

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestFieldCacheRangeFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestFieldCacheRangeFilter.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestFieldCacheRangeFilter.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestFieldCacheRangeFilter.java Sat Nov 12 14:09:28 2011
@@ -548,7 +548,7 @@ public class TestFieldCacheRangeFilter e
       writer.addDocument(doc);
     }
     
-    writer.optimize();
+    writer.forceMerge(1);
     writer.deleteDocuments(new Term("id","0"));
     writer.close();
 

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestFilteredQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestFilteredQuery.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestFilteredQuery.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestFilteredQuery.java Sat Nov 12 14:09:28 2011
@@ -75,7 +75,7 @@ public class TestFilteredQuery extends L
     // tests here require single segment (eg try seed
     // 8239472272678419952L), because SingleDocTestFilter(x)
     // blindly accepts that docID in any sub-segment
-    writer.optimize();
+    writer.forceMerge(1);
 
     reader = writer.getReader();
     writer.close ();

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestFilteredSearch.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestFilteredSearch.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestFilteredSearch.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestFilteredSearch.java Sat Nov 12 14:09:28 2011
@@ -61,15 +61,16 @@ public class TestFilteredSearch extends 
     directory.close();
   }
 
-  public void searchFiltered(IndexWriter writer, Directory directory, SimpleDocIdSetFilter filter, boolean optimize) {
+  public void searchFiltered(IndexWriter writer, Directory directory, SimpleDocIdSetFilter filter, boolean fullMerge) {
     try {
       for (int i = 0; i < 60; i++) {//Simple docs
         Document doc = new Document();
         doc.add(newField(FIELD, Integer.toString(i), Field.Store.YES, Field.Index.NOT_ANALYZED));
         writer.addDocument(doc);
       }
-      if(optimize)
-        writer.optimize();
+      if (fullMerge) {
+        writer.forceMerge(1);
+      }
       writer.close();
 
       BooleanQuery booleanQuery = new BooleanQuery();

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestMultiSearcher.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestMultiSearcher.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestMultiSearcher.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestMultiSearcher.java Sat Nov 12 14:09:28 2011
@@ -91,7 +91,7 @@ public class TestMultiSearcher extends L
         writerA.addDocument(lDoc);
         writerA.addDocument(lDoc2);
         writerA.addDocument(lDoc3);
-        writerA.optimize();
+        writerA.forceMerge(1);
         writerA.close();
 
         // closing the second index
@@ -130,7 +130,7 @@ public class TestMultiSearcher extends L
                 new StandardAnalyzer(TEST_VERSION_CURRENT))
                 .setOpenMode(OpenMode.APPEND));
         writerB.addDocument(lDoc);
-        writerB.optimize();
+        writerB.forceMerge(1);
         writerB.close();
 
         // building the searchables
@@ -178,7 +178,7 @@ public class TestMultiSearcher extends L
             TEST_VERSION_CURRENT, 
                 new StandardAnalyzer(TEST_VERSION_CURRENT))
                 .setOpenMode(OpenMode.APPEND));
-        writerB.optimize();
+        writerB.forceMerge(1);
         writerB.close();
 
         // building the searchables

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestScorerPerf.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestScorerPerf.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestScorerPerf.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestScorerPerf.java Sat Nov 12 14:09:28 2011
@@ -12,7 +12,6 @@ import org.apache.lucene.index.Term;
 import org.apache.lucene.index.IndexWriterConfig.OpenMode;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.analysis.MockAnalyzer;
-import org.apache.lucene.analysis.WhitespaceAnalyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
 
@@ -71,7 +70,7 @@ public class TestScorerPerf extends Luce
       }
       iw.addDocument(d);
     }
-    iw.optimize();
+    iw.forceMerge(1);
     iw.close();
   }
 
@@ -103,7 +102,7 @@ public class TestScorerPerf extends Luce
     @Override
     public void collect(int doc) {
       count++;
-      sum += docBase + doc;  // use it to avoid any possibility of being optimized away
+      sum += docBase + doc;  // use it to avoid any possibility of being eliminated by hotspot
     }
 
     public int getCount() { return count; }

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestSimpleExplanations.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestSimpleExplanations.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestSimpleExplanations.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestSimpleExplanations.java Sat Nov 12 14:09:28 2011
@@ -324,7 +324,7 @@ public class TestSimpleExplanations exte
 
     writerA.addDocument(lDoc);
     writerA.addDocument(lDoc2);
-    writerA.optimize();
+    writerA.forceMerge(1);
     writerA.close();
 
     writerB.addDocument(lDoc3);

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestSort.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestSort.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestSort.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestSort.java Sat Nov 12 14:09:28 2011
@@ -171,9 +171,9 @@ public class TestSort extends LuceneTest
         writer.addDocument (doc);
       
     }
-    //writer.optimize ();
+    //writer.forceMerge(1);
     //System.out.println(writer.getSegmentCount());
-    writer.close ();
+    writer.close();
     return new IndexSearcher (indexStore, true);
   }
   
@@ -1216,7 +1216,7 @@ public class TestSort extends LuceneTest
         doc.add (new Field ("string", "b"+i, Field.Store.NO, Field.Index.NOT_ANALYZED));
         writer.addDocument (doc);
     }
-    writer.optimize(); // enforce one segment to have a higher unique term count in all cases
+    writer.forceMerge(1); // enforce one segment to have a higher unique term count in all cases
     writer.close();
     sort.setSort(
         new SortField("string", SortField.STRING),

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestTermScorer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestTermScorer.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestTermScorer.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestTermScorer.java Sat Nov 12 14:09:28 2011
@@ -52,7 +52,7 @@ public class TestTermScorer extends Luce
               Field.Index.ANALYZED));
       writer.addDocument(doc);
     }
-    writer.optimize();
+    writer.forceMerge(1);
     indexReader = writer.getReader();
     writer.close();
     indexSearcher = newSearcher(indexReader);

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestTermVectors.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestTermVectors.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestTermVectors.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestTermVectors.java Sat Nov 12 14:09:28 2011
@@ -475,22 +475,22 @@ public class TestTermVectors extends Luc
     r.close();
   }
   
-  public void testOptimizeAddDocs() throws Exception {
+  public void testFullMergeAddDocs() throws Exception {
     Directory target = newDirectory();
     IndexWriter writer = createWriter(target);
-    // with maxBufferedDocs=2, this results in two segments, so that optimize
+    // with maxBufferedDocs=2, this results in two segments, so that forceMerge
     // actually does something.
     for (int i = 0; i < 4; i++) {
       writer.addDocument(createDoc());
     }
-    writer.optimize();
+    writer.forceMerge(1);
     writer.close();
     
     verifyIndex(target);
     target.close();
   }
 
-  public void testOptimizeAddIndexesDir() throws Exception {
+  public void testFullMergeAddIndexesDir() throws Exception {
     Directory[] input = new Directory[] { newDirectory(), newDirectory() };
     Directory target = newDirectory();
     
@@ -500,7 +500,7 @@ public class TestTermVectors extends Luc
     
     IndexWriter writer = createWriter(target);
     writer.addIndexes(input);
-    writer.optimize();
+    writer.forceMerge(1);
     writer.close();
 
     verifyIndex(target);
@@ -508,7 +508,7 @@ public class TestTermVectors extends Luc
     IOUtils.close(target, input[0], input[1]);
   }
   
-  public void testOptimizeAddIndexesReader() throws Exception {
+  public void testFullMergeAddIndexesReader() throws Exception {
     Directory[] input = new Directory[] { newDirectory(), newDirectory() };
     Directory target = newDirectory();
     
@@ -522,7 +522,7 @@ public class TestTermVectors extends Luc
       writer.addIndexes(r);
       r.close();
     }
-    writer.optimize();
+    writer.forceMerge(1);
     writer.close();
     
     verifyIndex(target);

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestTopDocsMerge.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestTopDocsMerge.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestTopDocsMerge.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/TestTopDocsMerge.java Sat Nov 12 14:09:28 2011
@@ -72,7 +72,7 @@ public class TestTopDocsMerge extends Lu
     {
       dir = newDirectory();
       final RandomIndexWriter w = new RandomIndexWriter(random, dir);
-      // w.setDoRandomOptimize(false);
+      // w.setDoRandomForceMerge(false);
 
       // w.w.getConfig().setMaxBufferedDocs(atLeast(100));
 

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/function/FunctionTestSetup.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/function/FunctionTestSetup.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/function/FunctionTestSetup.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/search/function/FunctionTestSetup.java Sat Nov 12 14:09:28 2011
@@ -105,9 +105,9 @@ public abstract class FunctionTestSetup 
     }
     if (!doMultiSegment) {
       if (VERBOSE) {
-        System.out.println("TEST: setUp optimize");
+        System.out.println("TEST: setUp full merge");
       }
-      iw.optimize();
+      iw.forceMerge(1);
     }
     iw.close();
     if (VERBOSE) {

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/store/TestRAMDirectory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/store/TestRAMDirectory.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/store/TestRAMDirectory.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/store/TestRAMDirectory.java Sat Nov 12 14:09:28 2011
@@ -26,7 +26,6 @@ import java.io.ByteArrayOutputStream;
 import org.apache.lucene.util.LuceneTestCase;
 import org.apache.lucene.util._TestUtil;
 import org.apache.lucene.analysis.MockAnalyzer;
-import org.apache.lucene.analysis.WhitespaceAnalyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
 import org.apache.lucene.index.IndexReader;
@@ -108,7 +107,7 @@ public class TestRAMDirectory extends Lu
     
     final IndexWriter writer = new IndexWriter(ramDir, new IndexWriterConfig(
         TEST_VERSION_CURRENT, new MockAnalyzer(random)).setOpenMode(OpenMode.APPEND));
-    writer.optimize();
+    writer.forceMerge(1);
     
     assertEquals(ramDir.sizeInBytes(), ramDir.getRecomputedSizeInBytes());
     
@@ -135,7 +134,7 @@ public class TestRAMDirectory extends Lu
     for (int i=0; i<numThreads; i++)
       threads[i].join();
 
-    writer.optimize();
+    writer.forceMerge(1);
     assertEquals(ramDir.sizeInBytes(), ramDir.getRecomputedSizeInBytes());
     
     writer.close();

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/util/fst/TestFSTs.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/util/fst/TestFSTs.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/util/fst/TestFSTs.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/util/fst/TestFSTs.java Sat Nov 12 14:09:28 2011
@@ -1468,7 +1468,7 @@ public class TestFSTs extends LuceneTest
         w.addDocument(doc);
       }
 
-      //w.optimize();
+      //w.forceMerge(1);
 
       // turn writer into reader:
       final IndexReader r = w.getReader();

Modified: lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/core/IndexDeletionPolicyWrapper.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/core/IndexDeletionPolicyWrapper.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/core/IndexDeletionPolicyWrapper.java (original)
+++ lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/core/IndexDeletionPolicyWrapper.java Sat Nov 12 14:09:28 2011
@@ -173,8 +173,8 @@ public class IndexDeletionPolicyWrapper 
     }
 
     @Override
-    public boolean isOptimized() {
-      return delegate.isOptimized();
+    public int getSegmentCount() {
+      return delegate.getSegmentCount();
     }
 
     @Override

Modified: lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/core/SolrDeletionPolicy.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/core/SolrDeletionPolicy.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/core/SolrDeletionPolicy.java (original)
+++ lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/core/SolrDeletionPolicy.java Sat Nov 12 14:09:28 2011
@@ -135,7 +135,7 @@ public class SolrDeletionPolicy implemen
       IndexCommit newest = commits.get(commits.size() - 1);
       log.info("newest commit = " + newest.getVersion());
 
-      int optimizedKept = newest.isOptimized() ? 1 : 0;
+      int singleSegKept = (newest.getSegmentCount() == 1) ? 1 : 0;
       int totalKept = 1;
 
       // work our way from newest to oldest, skipping the first since we always want to keep it.
@@ -158,9 +158,9 @@ public class SolrDeletionPolicy implemen
           log.warn("Exception while checking commit point's age for deletion", e);
         }
 
-        if (optimizedKept < maxOptimizedCommitsToKeep && commit.isOptimized()) {
+        if (singleSegKept < maxOptimizedCommitsToKeep && commit.getSegmentCount() == 1) {
           totalKept++;
-          optimizedKept++;
+          singleSegKept++;
           continue;
         }
 

Modified: lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/handler/ReplicationHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/handler/ReplicationHandler.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/handler/ReplicationHandler.java (original)
+++ lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/handler/ReplicationHandler.java Sat Nov 12 14:09:28 2011
@@ -767,7 +767,7 @@ public class ReplicationHandler extends 
 
   void refreshCommitpoint() {
     IndexCommit commitPoint = core.getDeletionPolicy().getLatestCommit();
-    if(replicateOnCommit || (replicateOnOptimize && commitPoint.isOptimized())) {
+    if(replicateOnCommit || (replicateOnOptimize && commitPoint.getSegmentCount() == 1)) {
       indexCommitPoint = commitPoint;
     }
   }
@@ -836,7 +836,7 @@ public class ReplicationHandler extends 
               if(replicateOnOptimize){
                 Collection<IndexCommit> commits = IndexReader.listCommits(reader.directory());
                 for (IndexCommit ic : commits) {
-                  if(ic.isOptimized()){
+                  if(ic.getSegmentCount() == 1){
                     if(indexCommitPoint == null || indexCommitPoint.getVersion() < ic.getVersion()) indexCommitPoint = ic;
                   }
                 }

Modified: lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/handler/admin/LukeRequestHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/handler/admin/LukeRequestHandler.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/handler/admin/LukeRequestHandler.java (original)
+++ lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/handler/admin/LukeRequestHandler.java Sat Nov 12 14:09:28 2011
@@ -35,7 +35,6 @@ import org.slf4j.LoggerFactory;
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Fieldable;
-import org.apache.lucene.index.FieldInfo.IndexOptions;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.index.TermEnum;
@@ -486,7 +485,7 @@ public class LukeRequestHandler extends 
     }
 
     indexInfo.add("version", reader.getVersion());  // TODO? Is this different then: IndexReader.getCurrentVersion( dir )?
-    indexInfo.add("optimized", reader.isOptimized() );
+    indexInfo.add("segmentCount", reader.getSequentialSubReaders().length);
     indexInfo.add("current", reader.isCurrent() );
     indexInfo.add("hasDeletions", reader.hasDeletions() );
     indexInfo.add("directory", dir );

Modified: lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/handler/component/SpellCheckComponent.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/handler/component/SpellCheckComponent.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/handler/component/SpellCheckComponent.java (original)
+++ lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/handler/component/SpellCheckComponent.java Sat Nov 12 14:09:28 2011
@@ -22,28 +22,25 @@ import java.io.StringReader;
 import java.util.*;
 import java.util.concurrent.ConcurrentHashMap;
 
-import org.apache.lucene.search.spell.LevensteinDistance;
-import org.apache.lucene.search.spell.StringDistance;
-import org.apache.lucene.search.spell.SuggestWord;
-import org.apache.lucene.search.spell.SuggestWordQueue;
-import org.apache.solr.client.solrj.response.SpellCheckResponse;
-import org.apache.solr.common.params.ModifiableSolrParams;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.Token;
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.WhitespaceAnalyzer;
+import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
 import org.apache.lucene.analysis.tokenattributes.FlagsAttribute;
 import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
 import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
 import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
-import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
 import org.apache.lucene.analysis.tokenattributes.TypeAttribute;
 import org.apache.lucene.index.IndexReader;
+import org.apache.lucene.search.spell.LevensteinDistance;
+import org.apache.lucene.search.spell.StringDistance;
+import org.apache.lucene.search.spell.SuggestWord;
+import org.apache.lucene.search.spell.SuggestWordQueue;
+import org.apache.solr.client.solrj.response.SpellCheckResponse;
 import org.apache.solr.common.SolrException;
 import org.apache.solr.common.params.CommonParams;
+import org.apache.solr.common.params.ModifiableSolrParams;
 import org.apache.solr.common.params.ShardParams;
 import org.apache.solr.common.params.SolrParams;
 import org.apache.solr.common.params.SpellingParams;
@@ -57,6 +54,8 @@ import org.apache.solr.schema.IndexSchem
 import org.apache.solr.search.SolrIndexSearcher;
 import org.apache.solr.spelling.*;
 import org.apache.solr.util.plugin.SolrCoreAware;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * A SearchComponent implementation which provides support for spell checking
@@ -682,7 +681,7 @@ public class SpellCheckComponent extends
         if (buildOnCommit)  {
           buildSpellIndex(newSearcher);
         } else if (buildOnOptimize) {
-          if (newSearcher.getReader().isOptimized())  {
+          if (newSearcher.getIndexReader().getSequentialSubReaders().length == 1)  {
             buildSpellIndex(newSearcher);
           } else  {
             LOG.info("Index is not optimized therefore skipping building spell check index for: " + checker.getDictionaryName());

Modified: lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/spelling/FileBasedSpellChecker.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/spelling/FileBasedSpellChecker.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/spelling/FileBasedSpellChecker.java (original)
+++ lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/spelling/FileBasedSpellChecker.java Sat Nov 12 14:09:28 2011
@@ -105,7 +105,7 @@ public class FileBasedSpellChecker exten
           d.add(new Field(WORD_FIELD_NAME, s, Field.Store.NO, Field.Index.ANALYZED));
           writer.addDocument(d);
         }
-        writer.optimize();
+        writer.forceMerge(1);
         writer.close();
 
         dictionary = new HighFrequencyDictionary(IndexReader.open(ramDir),

Modified: lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/update/DirectUpdateHandler2.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/update/DirectUpdateHandler2.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/update/DirectUpdateHandler2.java (original)
+++ lucene/dev/branches/branch_3x/solr/core/src/java/org/apache/solr/update/DirectUpdateHandler2.java Sat Nov 12 14:09:28 2011
@@ -20,30 +20,29 @@
 
 package org.apache.solr.update;
 
+import java.io.IOException;
+import java.net.URL;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.Future;
+import java.util.concurrent.atomic.AtomicLong;
+import java.util.concurrent.locks.Lock;
+import java.util.concurrent.locks.ReadWriteLock;
+import java.util.concurrent.locks.ReentrantReadWriteLock;
+
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
 import org.apache.lucene.index.Term;
+import org.apache.lucene.search.BooleanClause.Occur;
 import org.apache.lucene.search.BooleanClause;
 import org.apache.lucene.search.BooleanQuery;
-import org.apache.lucene.search.Query;
 import org.apache.lucene.search.MatchAllDocsQuery;
+import org.apache.lucene.search.Query;
 import org.apache.lucene.search.TermQuery;
-import org.apache.lucene.search.BooleanClause.Occur;
-
-import java.util.concurrent.Future;
-import java.util.concurrent.ExecutionException;
-import java.util.concurrent.locks.Lock;
-import java.util.concurrent.locks.ReadWriteLock;
-import java.util.concurrent.locks.ReentrantReadWriteLock;
-import java.util.concurrent.atomic.AtomicLong;
-import java.io.IOException;
-import java.net.URL;
-
-import org.apache.solr.search.QueryParsing;
 import org.apache.solr.common.SolrException;
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.common.util.SimpleOrderedMap;
 import org.apache.solr.core.SolrCore;
+import org.apache.solr.search.QueryParsing;
 
 /**
  * <code>DirectUpdateHandler2</code> implements an UpdateHandler where documents are added
@@ -401,7 +400,7 @@ public class DirectUpdateHandler2 extend
 
       if (cmd.optimize) {
         openWriter();
-        writer.optimize(cmd.maxOptimizeSegments);
+        writer.forceMerge(cmd.maxOptimizeSegments);
       } else if (cmd.expungeDeletes) {
         openWriter();
         writer.expungeDeletes();

Modified: lucene/dev/branches/branch_3x/solr/core/src/test/org/apache/solr/core/TestSolrDeletionPolicy1.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/solr/core/src/test/org/apache/solr/core/TestSolrDeletionPolicy1.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/solr/core/src/test/org/apache/solr/core/TestSolrDeletionPolicy1.java (original)
+++ lucene/dev/branches/branch_3x/solr/core/src/test/org/apache/solr/core/TestSolrDeletionPolicy1.java Sat Nov 12 14:09:28 2011
@@ -95,7 +95,7 @@ public class TestSolrDeletionPolicy1 ext
     for (Long version : commits.keySet()) {
       if (commits.get(version) == latest)
         continue;
-      assertTrue(commits.get(version).isOptimized());
+      assertEquals(1, commits.get(version).getSegmentCount());
     }
   }
 

Modified: lucene/dev/branches/branch_3x/solr/core/src/test/org/apache/solr/spelling/IndexBasedSpellCheckerTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/solr/core/src/test/org/apache/solr/spelling/IndexBasedSpellCheckerTest.java?rev=1201265&r1=1201264&r2=1201265&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/solr/core/src/test/org/apache/solr/spelling/IndexBasedSpellCheckerTest.java (original)
+++ lucene/dev/branches/branch_3x/solr/core/src/test/org/apache/solr/spelling/IndexBasedSpellCheckerTest.java Sat Nov 12 14:09:28 2011
@@ -291,7 +291,7 @@ public class IndexBasedSpellCheckerTest 
       doc.add(new Field("title", ALT_DOCS[i], Field.Store.YES, Field.Index.ANALYZED));
       iw.addDocument(doc);
     }
-    iw.optimize();
+    iw.forceMerge(1);
     iw.close();
     dir.close();
     indexDir.mkdirs();