You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by sa...@apache.org on 2016/06/17 23:07:39 UTC
[3/3] lucene-solr:branch_6_0: SOLR-9165: disable "cursorMark" when
testing for valid SpellCheck Collations
SOLR-9165: disable "cursorMark" when testing for valid SpellCheck Collations
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/7b79571d
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/7b79571d
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/7b79571d
Branch: refs/heads/branch_6_0
Commit: 7b79571d948365658e00f0bb431c082dedca1aaf
Parents: b866e59
Author: jdyer1 <jd...@apache.org>
Authored: Thu May 26 14:46:43 2016 -0500
Committer: Steve Rowe <sa...@apache.org>
Committed: Fri Jun 17 19:07:28 2016 -0400
----------------------------------------------------------------------
.../solr/spelling/SpellCheckCollator.java | 3 ++
.../solr/spelling/SpellCheckCollatorTest.java | 30 ++++++++++++++++++++
2 files changed, 33 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7b79571d/solr/core/src/java/org/apache/solr/spelling/SpellCheckCollator.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/spelling/SpellCheckCollator.java b/solr/core/src/java/org/apache/solr/spelling/SpellCheckCollator.java
index 528cdc3..0738081 100644
--- a/solr/core/src/java/org/apache/solr/spelling/SpellCheckCollator.java
+++ b/solr/core/src/java/org/apache/solr/spelling/SpellCheckCollator.java
@@ -24,6 +24,7 @@ import java.util.List;
import org.apache.lucene.analysis.Token;
import org.apache.lucene.index.IndexReader;
import org.apache.solr.common.params.CommonParams;
+import org.apache.solr.common.params.CursorMarkParams;
import org.apache.solr.common.params.DisMaxParams;
import org.apache.solr.common.params.GroupParams;
import org.apache.solr.common.params.ModifiableSolrParams;
@@ -118,6 +119,8 @@ public class SpellCheckCollator {
params.set(CommonParams.FL, "id");
// we'll sort by doc id to ensure no scoring is done.
params.set(CommonParams.SORT, "_docid_ asc");
+ // CursorMark does not like _docid_ sorting, and we don't need it.
+ params.remove(CursorMarkParams.CURSOR_MARK_PARAM);
// If a dismax query, don't add unnecessary clauses for scoring
params.remove(DisMaxParams.TIE);
params.remove(DisMaxParams.PF);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7b79571d/solr/core/src/test/org/apache/solr/spelling/SpellCheckCollatorTest.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/spelling/SpellCheckCollatorTest.java b/solr/core/src/test/org/apache/solr/spelling/SpellCheckCollatorTest.java
index 9711149..a31a19d 100644
--- a/solr/core/src/test/org/apache/solr/spelling/SpellCheckCollatorTest.java
+++ b/solr/core/src/test/org/apache/solr/spelling/SpellCheckCollatorTest.java
@@ -25,6 +25,7 @@ import org.apache.lucene.util.TestUtil;
import org.apache.solr.SolrTestCaseJ4;
import org.apache.solr.common.params.SolrParams;
import org.apache.solr.common.params.CommonParams;
+import org.apache.solr.common.params.CursorMarkParams;
import org.apache.solr.common.params.GroupParams;
import org.apache.solr.common.params.ModifiableSolrParams;
import org.apache.solr.common.params.SpellingParams;
@@ -594,5 +595,34 @@ public class SpellCheckCollatorTest extends SolrTestCaseJ4 {
List<?> collations = (List<?>) collationList.getAll("collation");
assertTrue(collations.size() == 2);
}
+ @Test
+ public void testWithCursorMark() throws Exception
+ {
+ SolrCore core = h.getCore();
+ SearchComponent speller = core.getSearchComponent("spellcheck");
+ assertTrue("speller is null and it shouldn't be", speller != null);
+
+ ModifiableSolrParams params = new ModifiableSolrParams();
+ params.add(SpellCheckComponent.COMPONENT_NAME, "true");
+ params.add(SpellCheckComponent.SPELLCHECK_BUILD, "true");
+ params.add(SpellCheckComponent.SPELLCHECK_COUNT, "10");
+ params.add(SpellCheckComponent.SPELLCHECK_COLLATE, "true");
+ params.add(SpellCheckComponent.SPELLCHECK_MAX_COLLATION_TRIES, "2");
+ params.add(SpellCheckComponent.SPELLCHECK_MAX_COLLATIONS, "1");
+ params.add(CommonParams.Q, "lowerfilt:(+fauth)");
+ params.add(CommonParams.SORT, "id asc");
+ params.add(CursorMarkParams.CURSOR_MARK_PARAM, CursorMarkParams.CURSOR_MARK_START);
+ SolrRequestHandler handler = core.getRequestHandler("spellCheckCompRH");
+ SolrQueryResponse rsp = new SolrQueryResponse();
+ rsp.addResponseHeader(new SimpleOrderedMap());
+ SolrQueryRequest req = new LocalSolrQueryRequest(core, params);
+ handler.handleRequest(req, rsp);
+ req.close();
+ NamedList values = rsp.getValues();
+ NamedList spellCheck = (NamedList) values.get("spellcheck");
+ NamedList collationList = (NamedList) spellCheck.get("collations");
+ List<?> collations = (List<?>) collationList.getAll("collation");
+ assertTrue(collations.size() == 1);
+ }
}