You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by yo...@apache.org on 2010/06/18 21:53:08 UTC

svn commit: r956110 - in /lucene/dev/trunk/solr/src: java/org/apache/solr/search/BitDocSet.java test/org/apache/solr/search/TestDocSet.java

Author: yonik
Date: Fri Jun 18 19:53:08 2010
New Revision: 956110

URL: http://svn.apache.org/viewvc?rev=956110&view=rev
Log:
SOLR-1965: use fastGet in BitDocSet to speed up intersection counts

Modified:
    lucene/dev/trunk/solr/src/java/org/apache/solr/search/BitDocSet.java
    lucene/dev/trunk/solr/src/test/org/apache/solr/search/TestDocSet.java

Modified: lucene/dev/trunk/solr/src/java/org/apache/solr/search/BitDocSet.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/src/java/org/apache/solr/search/BitDocSet.java?rev=956110&r1=956109&r2=956110&view=diff
==============================================================================
--- lucene/dev/trunk/solr/src/java/org/apache/solr/search/BitDocSet.java (original)
+++ lucene/dev/trunk/solr/src/java/org/apache/solr/search/BitDocSet.java Fri Jun 18 19:53:08 2010
@@ -140,8 +140,11 @@ public class BitDocSet extends DocSetBas
     size=-1;
   }
 
+  /** Returns true of the doc exists in the set.
+   *  Should only be called when doc < OpenBitSet.size()
+   */
   public boolean exists(int doc) {
-    return bits.get(doc);
+    return bits.fastGet(doc);
   }
 
   @Override

Modified: lucene/dev/trunk/solr/src/test/org/apache/solr/search/TestDocSet.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/src/test/org/apache/solr/search/TestDocSet.java?rev=956110&r1=956109&r2=956110&view=diff
==============================================================================
--- lucene/dev/trunk/solr/src/test/org/apache/solr/search/TestDocSet.java (original)
+++ lucene/dev/trunk/solr/src/test/org/apache/solr/search/TestDocSet.java Fri Jun 18 19:53:08 2010
@@ -108,7 +108,7 @@ public class TestDocSet extends TestCase
   }
 
   public void checkEqual(OpenBitSet bs, DocSet set) {
-    for (int i=0; i<bs.capacity(); i++) {
+    for (int i=0; i<set.size(); i++) {
       assertEquals(bs.get(i), set.exists(i));
     }
     assertEquals(bs.cardinality(), set.size());