Index: lucene/src/test/org/apache/lucene/search/similarities/TestSimilarity2.java
===================================================================
--- lucene/src/test/org/apache/lucene/search/similarities/TestSimilarity2.java	(revision 1163047)
+++ lucene/src/test/org/apache/lucene/search/similarities/TestSimilarity2.java	(working copy)
@@ -20,6 +20,7 @@
 import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.lucene.analysis.MockAnalyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
 import org.apache.lucene.document.FieldType;
@@ -34,6 +35,7 @@
 import org.apache.lucene.search.TermQuery;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.util.LuceneTestCase;
+import org.apache.lucene.util._TestUtil;
 
 /**
  * Tests against all the similarities we have
@@ -173,6 +175,7 @@
     IndexSearcher is = newSearcher(ir);
     
     for (SimilarityProvider simProvider : simProviders) {
+      System.out.println(simProvider);
       is.setSimilarityProvider(simProvider);
       BooleanQuery query = new BooleanQuery(true);
       query.add(new TermQuery(new Term("foo", "bar")), BooleanClause.Occur.SHOULD);
@@ -209,4 +212,30 @@
     ir.close();
     dir.close();
   }
+  
+  /** nocommit */
+  public void testOmitTFDB1WithMemoryCodec() throws Exception {
+    Directory dir = newDirectory();
+    RandomIndexWriter iw = new RandomIndexWriter(random, dir,
+        newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random))
+        .setCodecProvider(_TestUtil.alwaysCodec("Memory")));
+    Document doc = new Document();
+    FieldType ft = new FieldType(TextField.TYPE_UNSTORED);
+    ft.setIndexOptions(IndexOptions.DOCS_ONLY);
+    ft.freeze();
+    Field f = newField("foo", "bar", ft);
+    doc.add(f);
+    iw.addDocument(doc);
+    IndexReader ir = iw.getReader();
+    iw.close();
+    IndexSearcher is = new IndexSearcher(ir);
+    
+    is.setSimilarityProvider(new BasicSimilarityProvider(new DFRSimilarity(new BasicModelD(), new AfterEffectB(), new NormalizationH1())));
+    BooleanQuery query = new BooleanQuery(true);
+    query.add(new TermQuery(new Term("foo", "bar")), BooleanClause.Occur.SHOULD);
+    assertEquals(1, is.search(query, 10).totalHits);
+    is.close();
+    ir.close();
+    dir.close();
+  }
 }
Index: lucene/src/java/org/apache/lucene/search/similarities/BasicSimilarityProvider.java
===================================================================
--- lucene/src/java/org/apache/lucene/search/similarities/BasicSimilarityProvider.java	(revision 1162903)
+++ lucene/src/java/org/apache/lucene/search/similarities/BasicSimilarityProvider.java	(working copy)
@@ -45,4 +45,9 @@
   public Similarity get(String field) {
     return sim;
   }
+
+  @Override
+  public String toString() {
+    return "BasicSimilarityProvider(" + sim + ")";
+  }
 }
\ No newline at end of file
Index: lucene/src/test-framework/org/apache/lucene/search/RandomSimilarityProvider.java
===================================================================
--- lucene/src/test-framework/org/apache/lucene/search/RandomSimilarityProvider.java	(revision 1163195)
+++ lucene/src/test-framework/org/apache/lucene/search/RandomSimilarityProvider.java	(working copy)
@@ -132,7 +132,7 @@
           allSims.add(new DFRSimilarity(basicModel, afterEffect, normalization));
         }
       }
-    }
+    } */
     for (Distribution distribution : DISTRIBUTIONS) {
       for (Lambda lambda : LAMBDAS) {
         for (Normalization normalization : NORMALIZATIONS) {
@@ -140,6 +140,7 @@
         }
       }
     }
+    /* TODO: enable all sims
     allSims.add(new LMDirichletSimilarity());
     allSims.add(new LMJelinekMercerSimilarity(0.1f));
     allSims.add(new LMJelinekMercerSimilarity(0.7f)); */
