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 2017/06/05 18:36:33 UTC
[19/41] lucene-solr:branch_6x: SOLR-10731: Add k parameter
SOLR-10731: Add k parameter
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/80e295d5
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/80e295d5
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/80e295d5
Branch: refs/heads/branch_6x
Commit: 80e295d53301711e10337725040c3e4227e40d4e
Parents: e2fbaf3
Author: Joel Bernstein <jb...@apache.org>
Authored: Wed May 24 20:04:20 2017 -0400
Committer: Joel Bernstein <jb...@apache.org>
Committed: Mon Jun 5 13:48:25 2017 -0400
----------------------------------------------------------------------
.../org/apache/solr/client/solrj/io/stream/KnnStream.java | 9 +++++++++
.../solr/client/solrj/io/stream/StreamExpressionTest.java | 9 ++++++++-
2 files changed, 17 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/80e295d5/solr/solrj/src/java/org/apache/solr/client/solrj/io/stream/KnnStream.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/stream/KnnStream.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/stream/KnnStream.java
index 1d5f187..f2ba0b9 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/stream/KnnStream.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/stream/KnnStream.java
@@ -47,6 +47,8 @@ import org.apache.solr.common.SolrDocumentList;
import org.apache.solr.common.params.ModifiableSolrParams;
import static org.apache.solr.common.params.CommonParams.Q;
+import static org.apache.solr.common.params.CommonParams.ROWS;
+
public class KnnStream extends TupleStream implements Expressible {
@@ -195,6 +197,13 @@ public class KnnStream extends TupleStream implements Expressible {
}
}
+ String k = params.get("k");
+
+ if(k != null) {
+ params.add(ROWS, k);
+ params.remove(k);
+ }
+
params.add(Q, "{!mlt"+builder.toString()+"}"+id);
QueryRequest request = new QueryRequest(params);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/80e295d5/solr/solrj/src/test/org/apache/solr/client/solrj/io/stream/StreamExpressionTest.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/test/org/apache/solr/client/solrj/io/stream/StreamExpressionTest.java b/solr/solrj/src/test/org/apache/solr/client/solrj/io/stream/StreamExpressionTest.java
index 04af631..47b1d31 100644
--- a/solr/solrj/src/test/org/apache/solr/client/solrj/io/stream/StreamExpressionTest.java
+++ b/solr/solrj/src/test/org/apache/solr/client/solrj/io/stream/StreamExpressionTest.java
@@ -943,6 +943,13 @@ public class StreamExpressionTest extends SolrCloudTestCase {
assertOrder(tuples, 2, 3, 4);
sParams = new ModifiableSolrParams(StreamingTest.mapParams(CommonParams.QT, "/stream"));
+ sParams.add("expr", "knn(" + COLLECTIONORALIAS + ", id=\"1\", qf=\"a_t\", k=\"2\", fl=\"id, score\", mintf=\"1\")");
+ solrStream = new SolrStream(jetty.getBaseUrl().toString() + "/collection1", sParams);
+ tuples = getTuples(solrStream);
+ assertTrue(tuples.size() == 2);
+ assertOrder(tuples, 2, 3);
+
+ sParams = new ModifiableSolrParams(StreamingTest.mapParams(CommonParams.QT, "/stream"));
sParams.add("expr", "knn(" + COLLECTIONORALIAS + ", id=\"1\", qf=\"a_t\", rows=\"4\", fl=\"id, score\", mintf=\"1\", maxdf=\"0\")");
solrStream = new SolrStream(jetty.getBaseUrl().toString() + "/collection1", sParams);
tuples = getTuples(solrStream);
@@ -955,7 +962,7 @@ public class StreamExpressionTest extends SolrCloudTestCase {
assertTrue(tuples.size() == 0);
sParams = new ModifiableSolrParams(StreamingTest.mapParams(CommonParams.QT, "/stream"));
- sParams.add("expr", "knn(" + COLLECTIONORALIAS + ", id=\"1\", qf=\"a_t\", rows=\"2\", fl=\"id, score\", mintf=\"1\", minwl=\"20\")");
+ sParams.add("expr", "knn(" + COLLECTIONORALIAS + ", id=\"1\", qf=\"a_t\", r=\"2\", fl=\"id, score\", mintf=\"1\", minwl=\"20\")");
solrStream = new SolrStream(jetty.getBaseUrl().toString() + "/collection1", sParams);
tuples = getTuples(solrStream);
assertTrue(tuples.size() == 0);