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 2011/07/23 00:03:55 UTC

svn commit: r1149746 - in /lucene/dev/trunk/solr: CHANGES.txt core/src/java/org/apache/solr/search/SolrIndexSearcher.java core/src/test/org/apache/solr/search/TestFiltering.java

Author: yonik
Date: Fri Jul 22 22:03:54 2011
New Revision: 1149746

URL: http://svn.apache.org/viewvc?rev=1149746&view=rev
Log:
SOLR-2662: fix 'start' handling when a query isn't cached

Modified:
    lucene/dev/trunk/solr/CHANGES.txt
    lucene/dev/trunk/solr/core/src/java/org/apache/solr/search/SolrIndexSearcher.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/search/TestFiltering.java

Modified: lucene/dev/trunk/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/CHANGES.txt?rev=1149746&r1=1149745&r2=1149746&view=diff
==============================================================================
--- lucene/dev/trunk/solr/CHANGES.txt (original)
+++ lucene/dev/trunk/solr/CHANGES.txt Fri Jul 22 22:03:54 2011
@@ -369,6 +369,12 @@ Bug Fixes
   prior to the float value.
   (Markus Jelsma, hossman)
 
+* SOLR-2662: When Solr is configured to have no queryResultCache, the
+  "start" parameter was not honored and the documents returned were
+   0 through start+offset.  (Markus Jelsma, yonik)
+
+
+
  Other Changes
 ----------------------
 

Modified: lucene/dev/trunk/solr/core/src/java/org/apache/solr/search/SolrIndexSearcher.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/java/org/apache/solr/search/SolrIndexSearcher.java?rev=1149746&r1=1149745&r2=1149746&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/search/SolrIndexSearcher.java (original)
+++ lucene/dev/trunk/solr/core/src/java/org/apache/solr/search/SolrIndexSearcher.java Fri Jul 22 22:03:54 2011
@@ -1151,10 +1151,9 @@ public class SolrIndexSearcher extends I
         getDocListNC(qr,cmd);
         //Parameters: cmd.getQuery(),theFilt,cmd.getSort(),0,supersetMaxDoc,cmd.getFlags(),cmd.getTimeAllowed(),responseHeader);
       }
-      if (key != null) {
-        superset = out.docList;
-        out.docList = superset.subset(cmd.getOffset(),cmd.getLen());
-      }
+
+      superset = out.docList;
+      out.docList = superset.subset(cmd.getOffset(),cmd.getLen());
     }
 
     // lastly, put the superset in the cache if the size is less than or equal

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/search/TestFiltering.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/search/TestFiltering.java?rev=1149746&r1=1149745&r2=1149746&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/search/TestFiltering.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/search/TestFiltering.java Fri Jul 22 22:03:54 2011
@@ -101,6 +101,10 @@ public class TestFiltering extends SolrT
     );
     assertEquals(0, DelegatingCollector.setLastDelegateCount - prevCount);
 
+    // test that offset works when not caching main query
+    assertJQ(req("q","{!cache=false}*:*", "start","2", "rows","1", "sort","val_i asc", "fl","val_i")
+        ,"/response/docs==[{'val_i':3}]"
+    );
 
   }