You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by rm...@apache.org on 2012/08/21 16:12:55 UTC

svn commit: r1375558 - in /lucene/dev/branches/branch_4x/lucene: CHANGES.txt core/src/java/org/apache/lucene/index/AtomicReader.java core/src/java/org/apache/lucene/index/Fields.java core/src/test/org/apache/lucene/index/TestDirectoryReader.java

Author: rmuir
Date: Tue Aug 21 14:12:55 2012
New Revision: 1375558

URL: http://svn.apache.org/viewvc?rev=1375558&view=rev
Log:
LUCENE-4316: deprecate Fields.getUniqueTermCount, remove AtomicReader.getUniqueTermCount

Modified:
    lucene/dev/branches/branch_4x/lucene/CHANGES.txt
    lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/AtomicReader.java
    lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/Fields.java
    lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestDirectoryReader.java

Modified: lucene/dev/branches/branch_4x/lucene/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/CHANGES.txt?rev=1375558&r1=1375557&r2=1375558&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/CHANGES.txt (original)
+++ lucene/dev/branches/branch_4x/lucene/CHANGES.txt Tue Aug 21 14:12:55 2012
@@ -55,6 +55,12 @@ API Changes
 * LUCENE-4307: Renamed IndexReader.getTopReaderContext to 
   IndexReader.getContext.  (Robert Muir)
 
+* LUCENE-4316: Deprecate Fields.getUniqueTermCount and remove it from
+  AtomicReader. If you really want the unique term count across all
+  fields, just sum up Terms.size() across those fields. This method
+  only exists so that this statistic can be accessed for Lucene 3.x 
+  segments, which don't support Terms.size().  (Uwe Schindler, Robert Muir)
+
 Bug Fixes
 
 * LUCENE-4297: BooleanScorer2 would multiply the coord() factor

Modified: lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/AtomicReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/AtomicReader.java?rev=1375558&r1=1375557&r2=1375558&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/AtomicReader.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/AtomicReader.java Tue Aug 21 14:12:55 2012
@@ -188,17 +188,6 @@ public abstract class AtomicReader exten
     }
     return null;
   }
-
-  /** Returns the number of unique terms (across all fields)
-   *  in this reader.
-   */
-  public final long getUniqueTermCount() throws IOException {
-    final Fields fields = fields();
-    if (fields == null) {
-      return 0;
-    }
-    return fields.getUniqueTermCount();
-  }
   
   /**
    * Returns {@link DocValues} for this field.

Modified: lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/Fields.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/Fields.java?rev=1375558&r1=1375557&r2=1375558&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/Fields.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/Fields.java Tue Aug 21 14:12:55 2012
@@ -41,8 +41,13 @@ public abstract class Fields implements 
   /** Returns the number of terms for all fields, or -1 if this 
    *  measure isn't stored by the codec. Note that, just like 
    *  other term measures, this measure does not take deleted 
-   *  documents into account. */
-  // TODO: deprecate?
+   *  documents into account. 
+   *  @deprecated iterate fields and add their size() instead. 
+   *   this method is only provided as a transition mechanism
+   *   to access this statistic for 3.x indexes, which do not
+   *   have this statistic per-field.
+   *  @see Terms#size() */
+  @Deprecated
   public long getUniqueTermCount() throws IOException {
     long numTerms = 0;
     for (String field : this) {

Modified: lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestDirectoryReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestDirectoryReader.java?rev=1375558&r1=1375557&r2=1375558&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestDirectoryReader.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestDirectoryReader.java Tue Aug 21 14:12:55 2012
@@ -807,7 +807,7 @@ public void testFilesOpenClose() throws 
   
     DirectoryReader r = DirectoryReader.open(dir);
     AtomicReader r1 = getOnlySegmentReader(r);
-    assertEquals(36, r1.getUniqueTermCount());
+    assertEquals(36, r1.fields().getUniqueTermCount());
     writer.addDocument(doc);
     writer.commit();
     DirectoryReader r2 = DirectoryReader.openIfChanged(r);
@@ -815,7 +815,7 @@ public void testFilesOpenClose() throws 
     r.close();
   
     for(AtomicReaderContext s : r2.leaves()) {
-      assertEquals(36, s.reader().getUniqueTermCount());
+      assertEquals(36, s.reader().fields().getUniqueTermCount());
     }
     r2.close();
     writer.close();