You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by jb...@apache.org on 2014/08/15 13:17:53 UTC
svn commit: r1618152 - in /lucene/dev/branches/branch_4x: ./ solr/
solr/core/ solr/core/src/java/org/apache/solr/core/
solr/core/src/java/org/apache/solr/response/
solr/core/src/java/org/apache/solr/search/
solr/core/src/test-files/solr/collection1/con...
Author: jbernste
Date: Fri Aug 15 11:17:53 2014
New Revision: 1618152
URL: http://svn.apache.org/r1618152
Log:
SOLR-5244: Exporting Full Sorted Result Sets
Added:
lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/response/SortingResponseWriter.java
- copied, changed from r1618068, lucene/dev/trunk/solr/core/src/java/org/apache/solr/response/SortingResponseWriter.java
lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/search/ExportQParserPlugin.java
- copied, changed from r1618068, lucene/dev/trunk/solr/core/src/java/org/apache/solr/search/ExportQParserPlugin.java
lucene/dev/branches/branch_4x/solr/core/src/test-files/solr/collection1/conf/schema-sortingresponse.xml
- copied unchanged from r1618068, lucene/dev/trunk/solr/core/src/test-files/solr/collection1/conf/schema-sortingresponse.xml
lucene/dev/branches/branch_4x/solr/core/src/test-files/solr/collection1/conf/solrconfig-sortingresponse.xml
- copied unchanged from r1618068, lucene/dev/trunk/solr/core/src/test-files/solr/collection1/conf/solrconfig-sortingresponse.xml
lucene/dev/branches/branch_4x/solr/core/src/test/org/apache/solr/response/TestSortingResponseWriter.java
- copied unchanged from r1618068, lucene/dev/trunk/solr/core/src/test/org/apache/solr/response/TestSortingResponseWriter.java
Modified:
lucene/dev/branches/branch_4x/ (props changed)
lucene/dev/branches/branch_4x/solr/ (props changed)
lucene/dev/branches/branch_4x/solr/core/ (props changed)
lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/core/SolrCore.java
lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/search/QParserPlugin.java
lucene/dev/branches/branch_4x/solr/core/src/test/org/apache/solr/search/QueryEqualityTest.java
lucene/dev/branches/branch_4x/solr/example/ (props changed)
lucene/dev/branches/branch_4x/solr/example/solr/collection1/conf/solrconfig.xml
Modified: lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/core/SolrCore.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/core/SolrCore.java?rev=1618152&r1=1618151&r2=1618152&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/core/SolrCore.java (original)
+++ lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/core/SolrCore.java Fri Aug 15 11:17:53 2014
@@ -63,6 +63,7 @@ import org.apache.solr.response.RawRespo
import org.apache.solr.response.RubyResponseWriter;
import org.apache.solr.response.SchemaXmlResponseWriter;
import org.apache.solr.response.SolrQueryResponse;
+import org.apache.solr.response.SortingResponseWriter;
import org.apache.solr.response.XMLResponseWriter;
import org.apache.solr.response.transform.TransformerFactory;
import org.apache.solr.rest.ManagedResourceStorage;
@@ -2057,6 +2058,7 @@ public final class SolrCore implements S
m.put("raw", new RawResponseWriter());
m.put("javabin", new BinaryResponseWriter());
m.put("csv", new CSVResponseWriter());
+ m.put("xsort", new SortingResponseWriter());
m.put("schema.xml", new SchemaXmlResponseWriter());
DEFAULT_RESPONSE_WRITERS = Collections.unmodifiableMap(m);
}
Copied: lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/response/SortingResponseWriter.java (from r1618068, lucene/dev/trunk/solr/core/src/java/org/apache/solr/response/SortingResponseWriter.java)
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/response/SortingResponseWriter.java?p2=lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/response/SortingResponseWriter.java&p1=lucene/dev/trunk/solr/core/src/java/org/apache/solr/response/SortingResponseWriter.java&r1=1618068&r2=1618152&rev=1618152&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/response/SortingResponseWriter.java (original)
+++ lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/response/SortingResponseWriter.java Fri Aug 15 11:17:53 2014
@@ -1110,7 +1110,7 @@ public class SortingResponseWriter imple
private String field;
private FieldType fieldType;
private boolean numeric;
- private CharsRefBuilder cref = new CharsRefBuilder();
+ private CharsRef cref = new CharsRef();
public MultiFieldWriter(String field, FieldType fieldType, boolean numeric) {
this.field = field;
@@ -1207,7 +1207,7 @@ public class SortingResponseWriter imple
class StringFieldWriter extends FieldWriter {
private String field;
private FieldType fieldType;
- private CharsRefBuilder cref = new CharsRefBuilder();
+ private CharsRef cref = new CharsRef();
public StringFieldWriter(String field, FieldType fieldType) {
this.field = field;
Copied: lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/search/ExportQParserPlugin.java (from r1618068, lucene/dev/trunk/solr/core/src/java/org/apache/solr/search/ExportQParserPlugin.java)
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/search/ExportQParserPlugin.java?p2=lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/search/ExportQParserPlugin.java&p1=lucene/dev/trunk/solr/core/src/java/org/apache/solr/search/ExportQParserPlugin.java&r1=1618068&r2=1618152&rev=1618152&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/search/ExportQParserPlugin.java (original)
+++ lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/search/ExportQParserPlugin.java Fri Aug 15 11:17:53 2014
@@ -136,10 +136,9 @@ public class ExportQParserPlugin extends
this.sets = sets;
}
- public void doSetNextReader(AtomicReaderContext context) throws IOException {
+ public void setNextReader(AtomicReaderContext context) throws IOException {
this.set = new FixedBitSet(context.reader().maxDoc());
this.sets[context.ord] = set;
-
}
public void collect(int docId) throws IOException{
Modified: lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/search/QParserPlugin.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/search/QParserPlugin.java?rev=1618152&r1=1618151&r2=1618152&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/search/QParserPlugin.java (original)
+++ lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/search/QParserPlugin.java Fri Aug 15 11:17:53 2014
@@ -62,7 +62,8 @@ public abstract class QParserPlugin impl
CollapsingQParserPlugin.NAME, CollapsingQParserPlugin.class,
SimpleQParserPlugin.NAME, SimpleQParserPlugin.class,
ComplexPhraseQParserPlugin.NAME, ComplexPhraseQParserPlugin.class,
- ReRankQParserPlugin.NAME, ReRankQParserPlugin.class
+ ReRankQParserPlugin.NAME, ReRankQParserPlugin.class,
+ ExportQParserPlugin.NAME, ExportQParserPlugin.class
};
/** return a {@link QParser} */
Modified: lucene/dev/branches/branch_4x/solr/core/src/test/org/apache/solr/search/QueryEqualityTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/core/src/test/org/apache/solr/search/QueryEqualityTest.java?rev=1618152&r1=1618151&r2=1618152&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/solr/core/src/test/org/apache/solr/search/QueryEqualityTest.java (original)
+++ lucene/dev/branches/branch_4x/solr/core/src/test/org/apache/solr/search/QueryEqualityTest.java Fri Aug 15 11:17:53 2014
@@ -160,6 +160,15 @@ public class QueryEqualityTest extends S
}
}
+ public void testExportQuery() throws Exception {
+ SolrQueryRequest req = req("q", "*:*");
+ try {
+ assertQueryEquals("xport", req, "{!xport}");
+ } finally {
+ req.close();
+ }
+ }
+
public void testQuerySwitch() throws Exception {
SolrQueryRequest req = req("myXXX", "XXX",
"myField", "foo_s",
Modified: lucene/dev/branches/branch_4x/solr/example/solr/collection1/conf/solrconfig.xml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/example/solr/collection1/conf/solrconfig.xml?rev=1618152&r1=1618151&r2=1618152&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/solr/example/solr/collection1/conf/solrconfig.xml (original)
+++ lucene/dev/branches/branch_4x/solr/example/solr/collection1/conf/solrconfig.xml Fri Aug 15 11:17:53 2014
@@ -926,7 +926,28 @@
</lst>
</requestHandler>
-
+ <!--
+ The export request handler is used to export full sorted result sets.
+ Do not change these defaults.
+ -->
+
+ <requestHandler name="/export" class="solr.SearchHandler">
+ <lst name="invariants">
+ <str name="rq">{!xport}</str>
+ <str name="wt">xsort</str>
+ <str name="distrib">false</str>
+ </lst>
+
+ <arr name="components">
+ <str>query</str>
+ </arr>
+ </requestHandler>
+
+
+
+
+
+
<!-- A Robust Example
This example SearchHandler declaration shows off usage of the