You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by mi...@apache.org on 2015/02/09 00:53:25 UTC
svn commit: r1658277 [30/38] - in /lucene/dev/branches/lucene6005: ./
dev-tools/ dev-tools/idea/solr/contrib/dataimporthandler/
dev-tools/idea/solr/contrib/velocity/ dev-tools/maven/lucene/replicator/
dev-tools/maven/solr/ dev-tools/maven/solr/contrib/...
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotLargeTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotLargeTest.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotLargeTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotLargeTest.java Sun Feb 8 23:53:14 2015
@@ -32,18 +32,15 @@ import org.apache.solr.common.params.Fac
import org.apache.solr.common.params.SolrParams;
import junit.framework.AssertionFailedError;
+import org.junit.Test;
public class DistributedFacetPivotLargeTest extends BaseDistributedSearchTestCase {
public static final String SPECIAL = "";
- public DistributedFacetPivotLargeTest() {
- this.fixShardCount = true;
- this.shardCount = 4; // we leave one empty as an edge case
- }
-
- @Override
- public void doTest() throws Exception {
+ @Test
+ @ShardsFixed(num = 4)
+ public void test() throws Exception {
this.stress = 0 ;
handle.clear();
handle.put("QTime", SKIPVAL);
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotLongTailTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotLongTailTest.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotLongTailTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotLongTailTest.java Sun Feb 8 23:53:14 2015
@@ -26,6 +26,7 @@ import org.apache.solr.client.solrj.resp
import org.apache.solr.common.params.FacetParams;
import org.apache.solr.common.params.SolrParams;
import org.apache.solr.common.params.ModifiableSolrParams;
+import org.junit.Test;
/**
* test demonstrating how overrequesting helps finds top-terms in the "long tail"
@@ -39,11 +40,6 @@ import org.apache.solr.common.params.Mod
*/
public class DistributedFacetPivotLongTailTest extends BaseDistributedSearchTestCase {
- public DistributedFacetPivotLongTailTest(){
- this.fixShardCount = true;
- this.shardCount = 3;
- }
-
private int docNumber = 0;
public int getDocNum() {
@@ -51,8 +47,9 @@ public class DistributedFacetPivotLongTa
return docNumber;
}
- @Override
- public void doTest() throws Exception {
+ @Test
+ @ShardsFixed(num = 3)
+ public void test() throws Exception {
final SolrClient shard0 = clients.get(0);
final SolrClient shard1 = clients.get(1);
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotSmallAdvancedTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotSmallAdvancedTest.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotSmallAdvancedTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotSmallAdvancedTest.java Sun Feb 8 23:53:14 2015
@@ -25,6 +25,7 @@ import org.apache.solr.client.solrj.resp
import org.apache.solr.common.params.FacetParams;
import org.apache.solr.common.params.ModifiableSolrParams;
import org.apache.solr.common.params.SolrParams;
+import org.junit.Test;
import java.util.List;
@@ -37,13 +38,9 @@ import java.util.List;
*/
public class DistributedFacetPivotSmallAdvancedTest extends BaseDistributedSearchTestCase {
- public DistributedFacetPivotSmallAdvancedTest() {
- this.fixShardCount = true;
- this.shardCount = 2;
- }
-
- @Override
- public void doTest() throws Exception {
+ @Test
+ @ShardsFixed(num = 2)
+ public void test() throws Exception {
del("*:*");
final SolrClient shard0 = clients.get(0);
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotSmallTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotSmallTest.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotSmallTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotSmallTest.java Sun Feb 8 23:53:14 2015
@@ -32,16 +32,13 @@ import org.apache.solr.common.params.Sol
import org.apache.solr.common.params.ModifiableSolrParams;
import junit.framework.AssertionFailedError;
+import org.junit.Test;
public class DistributedFacetPivotSmallTest extends BaseDistributedSearchTestCase {
-
- public DistributedFacetPivotSmallTest() {
- this.fixShardCount = true;
- this.shardCount = 4;
- }
-
- @Override
- public void doTest() throws Exception {
+
+ @Test
+ @ShardsFixed(num = 4)
+ public void test() throws Exception {
del("*:*");
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotWhiteBoxTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotWhiteBoxTest.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotWhiteBoxTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedFacetPivotWhiteBoxTest.java Sun Feb 8 23:53:14 2015
@@ -22,18 +22,15 @@ import org.apache.solr.client.solrj.resp
import org.apache.solr.client.solrj.response.QueryResponse;
import org.apache.solr.common.params.ModifiableSolrParams;
import org.apache.solr.common.params.SolrParams;
+import org.junit.Test;
import java.util.List;
public class DistributedFacetPivotWhiteBoxTest extends BaseDistributedSearchTestCase {
- public DistributedFacetPivotWhiteBoxTest() {
- this.fixShardCount = true;
- this.shardCount = 4;
- }
-
- @Override
- public void doTest() throws Exception {
+ @Test
+ @ShardsFixed(num = 4)
+ public void test() throws Exception {
del("*:*");
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedMLTComponentTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedMLTComponentTest.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedMLTComponentTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedMLTComponentTest.java Sun Feb 8 23:53:14 2015
@@ -20,8 +20,8 @@ package org.apache.solr.handler.componen
import org.apache.lucene.util.LuceneTestCase.Slow;
import org.apache.solr.BaseDistributedSearchTestCase;
import org.apache.solr.common.params.MoreLikeThisParams;
-import org.junit.BeforeClass;
import org.junit.Ignore;
+import org.junit.Test;
/**
* Test for distributed MoreLikeThisComponent's
@@ -38,29 +38,18 @@ public class DistributedMLTComponentTest
public DistributedMLTComponentTest()
{
- fixShardCount=true;
- shardCount=3;
stress=0;
}
- @BeforeClass
- public static void beforeClass() throws Exception {
-
- }
-
@Override
- public void setUp() throws Exception {
+ public void distribSetUp() throws Exception {
requestHandlerName = "mltrh";
- super.setUp();
+ super.distribSetUp();
}
- @Override
- public void tearDown() throws Exception {
- super.tearDown();
- }
-
- @Override
- public void doTest() throws Exception {
+ @Test
+ @ShardsFixed(num = 3)
+ public void test() throws Exception {
del("*:*");
index(id, "1", "lowerfilt", "toyota");
index(id, "2", "lowerfilt", "chevrolet");
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedQueryComponentCustomSortTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedQueryComponentCustomSortTest.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedQueryComponentCustomSortTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedQueryComponentCustomSortTest.java Sun Feb 8 23:53:14 2015
@@ -19,9 +19,8 @@ package org.apache.solr.handler.componen
import org.apache.solr.BaseDistributedSearchTestCase;
import org.apache.solr.client.solrj.response.QueryResponse;
-import org.apache.solr.common.SolrDocument;
-import org.apache.solr.common.SolrDocumentList;
import org.junit.BeforeClass;
+import org.junit.Test;
import java.nio.ByteBuffer;
@@ -33,8 +32,6 @@ import java.nio.ByteBuffer;
public class DistributedQueryComponentCustomSortTest extends BaseDistributedSearchTestCase {
public DistributedQueryComponentCustomSortTest() {
- fixShardCount = true;
- shardCount = 3;
stress = 0;
}
@@ -43,8 +40,9 @@ public class DistributedQueryComponentCu
initCore("solrconfig.xml", "schema-custom-field.xml");
}
- @Override
- public void doTest() throws Exception {
+ @Test
+ @ShardsFixed(num = 3)
+ public void test() throws Exception {
del("*:*");
index(id, "1", "text", "a", "payload", ByteBuffer.wrap(new byte[] { 0x12, 0x62, 0x15 }), // 2
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedQueryComponentOptimizationTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedQueryComponentOptimizationTest.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedQueryComponentOptimizationTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedQueryComponentOptimizationTest.java Sun Feb 8 23:53:14 2015
@@ -20,11 +20,11 @@ package org.apache.solr.handler.componen
import org.apache.solr.BaseDistributedSearchTestCase;
import org.apache.solr.client.solrj.SolrServerException;
import org.apache.solr.client.solrj.response.QueryResponse;
-import org.apache.solr.cloud.AbstractFullDistribZkTestBase;
import org.apache.solr.common.params.ModifiableSolrParams;
import org.apache.solr.common.params.ShardParams;
import org.apache.solr.common.util.SimpleOrderedMap;
import org.junit.BeforeClass;
+import org.junit.Test;
import java.nio.ByteBuffer;
import java.util.Map;
@@ -40,8 +40,6 @@ import java.util.Map;
public class DistributedQueryComponentOptimizationTest extends BaseDistributedSearchTestCase {
public DistributedQueryComponentOptimizationTest() {
- fixShardCount = true;
- shardCount = 3;
stress = 0;
}
@@ -50,8 +48,9 @@ public class DistributedQueryComponentOp
initCore("solrconfig.xml", "schema-custom-field.xml");
}
- @Override
- public void doTest() throws Exception {
+ @Test
+ @ShardsFixed(num = 3)
+ public void test() throws Exception {
del("*:*");
index(id, "1", "text", "a", "test_sS", "21", "payload", ByteBuffer.wrap(new byte[] { 0x12, 0x62, 0x15 }), // 2
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedQueryElevationComponentTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedQueryElevationComponentTest.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedQueryElevationComponentTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedQueryElevationComponentTest.java Sun Feb 8 23:53:14 2015
@@ -26,6 +26,7 @@ import org.apache.solr.common.SolrInputD
import org.apache.solr.common.params.CommonParams;
import org.junit.AfterClass;
import org.junit.BeforeClass;
+import org.junit.Test;
/**
*
@@ -39,8 +40,6 @@ public class DistributedQueryElevationCo
}
public DistributedQueryElevationComponentTest() {
- fixShardCount = true;
- shardCount = 3;
stress = 0;
// TODO: a better way to do this?
@@ -59,8 +58,9 @@ public class DistributedQueryElevationCo
System.clearProperty("elevate.data.file");
}
- @Override
- public void doTest() throws Exception {
+ @Test
+ @ShardsFixed(num = 3)
+ public void test() throws Exception {
del("*:*");
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedSpellCheckComponentTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedSpellCheckComponentTest.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedSpellCheckComponentTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedSpellCheckComponentTest.java Sun Feb 8 23:53:14 2015
@@ -32,6 +32,7 @@ import org.apache.solr.common.params.Mod
import org.apache.solr.common.params.SpellingParams;
import org.apache.solr.common.util.NamedList;
import org.junit.BeforeClass;
+import org.junit.Test;
/**
* Test for SpellCheckComponent's distributed querying
@@ -57,16 +58,6 @@ public class DistributedSpellCheckCompon
useFactory(null); // need an FS factory
}
- @Override
- public void setUp() throws Exception {
- super.setUp();
- }
-
- @Override
- public void tearDown() throws Exception {
- super.tearDown();
- }
-
private void q(Object... q) throws Exception {
final ModifiableSolrParams params = new ModifiableSolrParams();
@@ -95,9 +86,9 @@ public class DistributedSpellCheckCompon
Assert.fail("Control data did not return any suggestions.");
}
}
-
- @Override
- public void doTest() throws Exception {
+
+ @Test
+ public void test() throws Exception {
del("*:*");
index(id, "1", "lowerfilt", "toyota");
index(id, "2", "lowerfilt", "chevrolet");
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedSuggestComponentTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedSuggestComponentTest.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedSuggestComponentTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedSuggestComponentTest.java Sun Feb 8 23:53:14 2015
@@ -31,6 +31,7 @@ import org.apache.solr.common.util.Named
import org.apache.solr.common.util.SimpleOrderedMap;
import org.apache.solr.spelling.suggest.SuggesterParams;
import org.junit.BeforeClass;
+import org.junit.Test;
/**
* Test for SuggestComponent's distributed querying
@@ -55,16 +56,6 @@ public class DistributedSuggestComponent
}
@Override
- public void setUp() throws Exception {
- super.setUp();
- }
-
- @Override
- public void tearDown() throws Exception {
- super.tearDown();
- }
-
- @Override
public void validateControlData(QueryResponse control) throws Exception
{
NamedList<Object> nl = control.getResponse();
@@ -74,10 +65,10 @@ public class DistributedSuggestComponent
if(sc.size() == 0 && command == null) {
Assert.fail("Control data did not return any suggestions or execute any command");
}
- }
-
- @Override
- public void doTest() throws Exception {
+ }
+
+ @Test
+ public void test() throws Exception {
del("*:*");
index(id, "1", "cat", "This is another title", "price", "10", "weight", "10");
index(id, "2", "cat", "Yet another", "price", "15", "weight", "10");
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedTermsComponentTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedTermsComponentTest.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedTermsComponentTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/DistributedTermsComponentTest.java Sun Feb 8 23:53:14 2015
@@ -18,6 +18,7 @@ package org.apache.solr.handler.componen
*/
import org.apache.solr.BaseDistributedSearchTestCase;
+import org.junit.Test;
/**
* Test for TermsComponent distributed querying
@@ -27,8 +28,8 @@ import org.apache.solr.BaseDistributedSe
*/
public class DistributedTermsComponentTest extends BaseDistributedSearchTestCase {
- @Override
- public void doTest() throws Exception {
+ @Test
+ public void test() throws Exception {
del("*:*");
index(id, 18, "b_t", "snake spider shark snail slug seal");
index(id, 19, "b_t", "snake spider shark snail slug");
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/SuggestComponentTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/SuggestComponentTest.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/SuggestComponentTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/SuggestComponentTest.java Sun Feb 8 23:53:14 2015
@@ -19,7 +19,12 @@ package org.apache.solr.handler.componen
import org.apache.solr.SolrTestCaseJ4;
import org.apache.solr.common.SolrException;
+import org.apache.solr.core.CoreContainer;
+import org.apache.solr.core.CoreDescriptor;
+import org.apache.solr.core.SolrCore;
+import org.apache.solr.search.SolrIndexSearcher;
import org.apache.solr.spelling.suggest.SuggesterParams;
+import org.apache.solr.util.RefCounted;
import org.junit.BeforeClass;
import org.junit.Test;
@@ -50,14 +55,20 @@ public class SuggestComponentTest extend
assertU(adoc("id", "9", "cat", "blah in blah", "price", "50", "weight", "40"));
assertU(adoc("id", "10", "cat", "another blah in blah", "price", "55", "weight", "40"));
assertU((commit()));
+ waitForWarming();
}
@Override
public void tearDown() throws Exception {
super.tearDown();
assertU(delQ("*:*"));
- optimize();
assertU((commit()));
+ waitForWarming();
+ // rebuild suggesters with empty index
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_BUILD_ALL, "true"),
+ "//str[@name='command'][.='buildAll']"
+ );
}
@Test
@@ -66,7 +77,7 @@ public class SuggestComponentTest extend
SuggesterParams.SUGGEST_DICT, "suggest_fuzzy_doc_dict",
SuggesterParams.SUGGEST_BUILD, "true",
SuggesterParams.SUGGEST_Q, "exampel",
- SuggesterParams.SUGGEST_COUNT, "2"),
+ SuggesterParams.SUGGEST_COUNT, "5"),
"//lst[@name='suggest']/lst[@name='suggest_fuzzy_doc_dict']/lst[@name='exampel']/int[@name='numFound'][.='2']",
"//lst[@name='suggest']/lst[@name='suggest_fuzzy_doc_dict']/lst[@name='exampel']/arr[@name='suggestions']/lst[1]/str[@name='term'][.='example inputdata']",
"//lst[@name='suggest']/lst[@name='suggest_fuzzy_doc_dict']/lst[@name='exampel']/arr[@name='suggestions']/lst[1]/long[@name='weight'][.='45']",
@@ -78,7 +89,7 @@ public class SuggestComponentTest extend
SuggesterParams.SUGGEST_DICT, "suggest_fuzzy_doc_dict",
SuggesterParams.SUGGEST_BUILD, "true",
SuggesterParams.SUGGEST_Q, "Rad",
- SuggesterParams.SUGGEST_COUNT, "2"),
+ SuggesterParams.SUGGEST_COUNT, "5"),
"//lst[@name='suggest']/lst[@name='suggest_fuzzy_doc_dict']/lst[@name='Rad']/int[@name='numFound'][.='2']",
"//lst[@name='suggest']/lst[@name='suggest_fuzzy_doc_dict']/lst[@name='Rad']/arr[@name='suggestions']/lst[1]/str[@name='term'][.='Rad fox']",
"//lst[@name='suggest']/lst[@name='suggest_fuzzy_doc_dict']/lst[@name='Rad']/arr[@name='suggestions']/lst[1]/long[@name='weight'][.='35']",
@@ -93,7 +104,7 @@ public class SuggestComponentTest extend
SuggesterParams.SUGGEST_DICT, "suggest_fuzzy_doc_expr_dict",
SuggesterParams.SUGGEST_BUILD, "true",
SuggesterParams.SUGGEST_Q, "exampel",
- SuggesterParams.SUGGEST_COUNT, "2"),
+ SuggesterParams.SUGGEST_COUNT, "5"),
"//lst[@name='suggest']/lst[@name='suggest_fuzzy_doc_expr_dict']/lst[@name='exampel']/int[@name='numFound'][.='2']",
"//lst[@name='suggest']/lst[@name='suggest_fuzzy_doc_expr_dict']/lst[@name='exampel']/arr[@name='suggestions']/lst[1]/str[@name='term'][.='example inputdata']",
"//lst[@name='suggest']/lst[@name='suggest_fuzzy_doc_expr_dict']/lst[@name='exampel']/arr[@name='suggestions']/lst[1]/long[@name='weight'][.='120']",
@@ -123,7 +134,7 @@ public class SuggestComponentTest extend
SuggesterParams.SUGGEST_DICT, "suggest_fuzzy_doc_expr_dict",
SuggesterParams.SUGGEST_BUILD, "true",
SuggesterParams.SUGGEST_Q, "exampel",
- SuggesterParams.SUGGEST_COUNT, "2"),
+ SuggesterParams.SUGGEST_COUNT, "5"),
"//lst[@name='suggest']/lst[@name='suggest_fuzzy_doc_dict']/lst[@name='exampel']/int[@name='numFound'][.='2']",
"//lst[@name='suggest']/lst[@name='suggest_fuzzy_doc_dict']/lst[@name='exampel']/arr[@name='suggestions']/lst[1]/str[@name='term'][.='example inputdata']",
"//lst[@name='suggest']/lst[@name='suggest_fuzzy_doc_dict']/lst[@name='exampel']/arr[@name='suggestions']/lst[1]/long[@name='weight'][.='45']",
@@ -142,7 +153,7 @@ public class SuggestComponentTest extend
assertQ(req("qt", rh,
SuggesterParams.SUGGEST_BUILD_ALL, "true",
SuggesterParams.SUGGEST_Q, "exampel",
- SuggesterParams.SUGGEST_COUNT, "2"),
+ SuggesterParams.SUGGEST_COUNT, "5"),
"//str[@name='command'][.='buildAll']"
);
@@ -157,7 +168,7 @@ public class SuggestComponentTest extend
assertQ(req("qt", rh,
SuggesterParams.SUGGEST_RELOAD_ALL, "true",
SuggesterParams.SUGGEST_Q, "exampel",
- SuggesterParams.SUGGEST_COUNT, "2"),
+ SuggesterParams.SUGGEST_COUNT, "5"),
"//str[@name='command'][.='reloadAll']"
);
@@ -174,7 +185,7 @@ public class SuggestComponentTest extend
req("qt", rh,
SuggesterParams.SUGGEST_DICT, fakeSuggesterName,
SuggesterParams.SUGGEST_Q, "exampel",
- SuggesterParams.SUGGEST_COUNT, "2"),
+ SuggesterParams.SUGGEST_COUNT, "5"),
SolrException.ErrorCode.BAD_REQUEST
);
@@ -182,9 +193,349 @@ public class SuggestComponentTest extend
"' parameter not specified and no default suggester configured",
req("qt", rh,
SuggesterParams.SUGGEST_Q, "exampel",
- SuggesterParams.SUGGEST_COUNT, "2"),
+ SuggesterParams.SUGGEST_COUNT, "5"),
SolrException.ErrorCode.BAD_REQUEST
);
}
+
+ @Test
+ public void testDefaultBuildOnStartupNotStoredDict() throws Exception {
+
+ final String suggester = "suggest_doc_default_startup_no_store";
+
+ // validate that this suggester is not storing the lookup
+ assertEquals(suggester,
+ h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[8]/str[@name='name']", false));
+ assertNull(h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[8]/str[@name='storeDir']", false));
+
+ // validate that this suggester only builds manually and has not buildOnStartup parameter
+ assertEquals("false",
+ h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[8]/str[@name='buildOnCommit']", true));
+ assertNull(h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[8]/str[@name='buildOnStartup']", false));
+
+ reloadCore(random().nextBoolean());
+
+ // Validate that the suggester was built on new/reload core
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggester,
+ SuggesterParams.SUGGEST_Q, "example",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggester + "']/lst[@name='example']/int[@name='numFound'][.='2']"
+ );
+
+ // add one more doc, should be visible after core reload
+ assertU(adoc("id", "10", "cat", "example data extra ", "price", "40", "weight", "35"));
+ assertU((commit()));
+
+ waitForWarming();
+
+ // buildOnCommit=false, this doc should not be in the suggester yet
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggester,
+ SuggesterParams.SUGGEST_Q, "example",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggester + "']/lst[@name='example']/int[@name='numFound'][.='2']"
+ );
+
+ reloadCore(random().nextBoolean());
+
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggester,
+ SuggesterParams.SUGGEST_Q, "example",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggester + "']/lst[@name='example']/int[@name='numFound'][.='3']"
+ );
+
+ }
+
+ @Test
+ public void testDefaultBuildOnStartupStoredDict() throws Exception {
+
+ final String suggester = "suggest_doc_default_startup";
+
+ // validate that this suggester is storing the lookup
+ assertEquals(suggester,
+ h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[7]/str[@name='name']", false));
+ assertEquals(suggester,
+ h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[7]/str[@name='storeDir']", false));
+
+ // validate that this suggester only builds manually and has not buildOnStartup parameter
+ assertEquals("false",
+ h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[7]/str[@name='buildOnCommit']", true));
+ assertNull(h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[7]/str[@name='buildOnStartup']", false));
+
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggester,
+ SuggesterParams.SUGGEST_Q, "example",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggester + "']/lst[@name='example']/int[@name='numFound'][.='0']"
+ );
+
+ // build the suggester manually
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggester,
+ SuggesterParams.SUGGEST_BUILD, "true"),
+ "//str[@name='command'][.='build']"
+ );
+
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggester,
+ SuggesterParams.SUGGEST_Q, "example",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggester + "']/lst[@name='example']/int[@name='numFound'][.='2']"
+ );
+
+ reloadCore(random().nextBoolean());
+
+ // Validate that the suggester was loaded on new/reload core
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggester,
+ SuggesterParams.SUGGEST_Q, "example",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggester + "']/lst[@name='example']/int[@name='numFound'][.='2']"
+ );
+
+ // add one more doc, this should not be seen after a core reload (not until the suggester is manually rebuilt)
+ assertU(adoc("id", "10", "cat", "example data extra ", "price", "40", "weight", "35"));
+ assertU((commit()));
+
+ waitForWarming();
+ // buildOnCommit=false, this doc should not be in the suggester yet
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggester,
+ SuggesterParams.SUGGEST_Q, "example",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggester + "']/lst[@name='example']/int[@name='numFound'][.='2']"
+ );
+
+ reloadCore(random().nextBoolean());
+
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggester,
+ SuggesterParams.SUGGEST_Q, "example",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggester + "']/lst[@name='example']/int[@name='numFound'][.='2']"
+ );
+
+ // build the suggester manually
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggester,
+ SuggesterParams.SUGGEST_BUILD, "true"),
+ "//str[@name='command'][.='build']"
+ );
+
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggester,
+ SuggesterParams.SUGGEST_Q, "example",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggester + "']/lst[@name='example']/int[@name='numFound'][.='3']"
+ );
+
+ }
+
+ @Test
+ public void testLoadOnStartup() throws Exception {
+
+ final String suggester = "suggest_fuzzy_doc_manal_build";
+
+ // validate that this suggester is storing the lookup
+ assertEquals(suggester,
+ h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[6]/str[@name='name']", false));
+ assertEquals(suggester,
+ h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[6]/str[@name='storeDir']", false));
+
+ // validate that this suggester only builds manually
+ assertEquals("false",
+ h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[6]/str[@name='buildOnCommit']", true));
+ assertEquals("false",
+ h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[6]/str[@name='buildOnStartup']", true));
+
+ // build the suggester manually
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggester,
+ SuggesterParams.SUGGEST_BUILD, "true"),
+ "//str[@name='command'][.='build']"
+ );
+
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggester,
+ SuggesterParams.SUGGEST_Q, "exampel",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggester + "']/lst[@name='exampel']/int[@name='numFound'][.='2']"
+ );
+
+ reloadCore(false);
+
+ // Validate that the suggester was loaded on core reload
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggester,
+ SuggesterParams.SUGGEST_Q, "exampel",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggester + "']/lst[@name='exampel']/int[@name='numFound'][.='2']"
+ );
+
+ reloadCore(true);
+
+ // Validate that the suggester was loaded on new core
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggester,
+ SuggesterParams.SUGGEST_Q, "exampel",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggester + "']/lst[@name='exampel']/int[@name='numFound'][.='2']"
+ );
+ }
+
+ public void testBuildOnStartupWithCoreReload() throws Exception {
+ doTestBuildOnStartup(false);
+ }
+
+ public void testBuildOnStartupWithNewCores() throws Exception {
+ doTestBuildOnStartup(true);
+ }
+
+ private void doTestBuildOnStartup(boolean createNewCores) throws Exception {
+
+ final String suggesterFuzzy = "suggest_fuzzy_doc_dict";
+
+ // the test relies on useColdSearcher=false
+ assertFalse("Precondition not met for test. useColdSearcher must be false",
+ h.getCore().getSolrConfig().useColdSearcher);
+
+ // validate that this suggester is not storing the lookup and buildOnStartup is not set
+ assertEquals(suggesterFuzzy,
+ h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[3]/str[@name='name']", false));
+ assertNull(h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[3]/str[@name='storeDir']", false));
+
+ // assert that buildOnStartup=false
+ assertEquals("false",
+ h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[3]/str[@name='buildOnStartup']", false));
+ assertEquals("true",
+ h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[3]/str[@name='buildOnCommit']", false));
+
+ // verify that this suggester is built (there was a commit in setUp)
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggesterFuzzy,
+ SuggesterParams.SUGGEST_Q, "exampel",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggesterFuzzy + "']/lst[@name='exampel']/int[@name='numFound'][.='2']"
+ );
+
+ // reload the core and wait for for the listeners to finish
+ reloadCore(createNewCores);
+ if (System.getProperty(SYSPROP_NIGHTLY) != null) {
+ // wait some time here in nightly to make sure there are no race conditions in suggester build
+ Thread.sleep(1000);
+ }
+
+ // The suggester should be empty
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggesterFuzzy,
+ SuggesterParams.SUGGEST_Q, "exampel",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggesterFuzzy + "']/lst[@name='exampel']/int[@name='numFound'][.='0']"
+ );
+
+ // build the suggester manually
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggesterFuzzy,
+ SuggesterParams.SUGGEST_BUILD, "true"),
+ "//str[@name='command'][.='build']"
+ );
+
+ // validate the suggester is built again
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggesterFuzzy,
+ SuggesterParams.SUGGEST_Q, "exampel",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggesterFuzzy + "']/lst[@name='exampel']/int[@name='numFound'][.='2']"
+ );
+
+ final String suggestStartup = "suggest_fuzzy_doc_dict_build_startup";
+
+ // repeat the test with "suggest_fuzzy_doc_dict_build_startup", it is exactly the same but with buildOnStartup=true
+ assertEquals(suggestStartup,
+ h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[5]/str[@name='name']", false));
+ assertNull(h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[5]/str[@name='storeDir']", false));
+ assertEquals("true",
+ h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[5]/str[@name='buildOnStartup']", false));
+ assertEquals("false",
+ h.getCore().getSolrConfig().getVal("//searchComponent[@name='suggest']/lst[5]/str[@name='buildOnCommit']", false));
+
+ // reload the core
+ reloadCore(createNewCores);
+ // verify that this suggester is built (should build on startup)
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggestStartup,
+ SuggesterParams.SUGGEST_Q, "exampel",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggestStartup + "']/lst[@name='exampel']/int[@name='numFound'][.='2']"
+ );
+
+ // add one more doc, this should not be seen without rebuilding manually or reloading the core (buildOnCommit=false)
+ assertU(adoc("id", "10", "cat", "example data extra ", "price", "40", "weight", "35"));
+ assertU((commit()));
+
+ waitForWarming();
+
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggestStartup,
+ SuggesterParams.SUGGEST_Q, "exampel",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggestStartup + "']/lst[@name='exampel']/int[@name='numFound'][.='2']"
+ );
+
+ // build the suggester manually
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggestStartup,
+ SuggesterParams.SUGGEST_BUILD, "true"),
+ "//str[@name='command'][.='build']"
+ );
+
+ assertQ(req("qt", rh,
+ SuggesterParams.SUGGEST_DICT, suggestStartup,
+ SuggesterParams.SUGGEST_Q, "exampel",
+ SuggesterParams.SUGGEST_COUNT, "5"),
+ "//lst[@name='suggest']/lst[@name='" + suggestStartup + "']/lst[@name='exampel']/int[@name='numFound'][.='3']"
+ );
+ }
+
+ private void reloadCore(boolean createNewCore) throws Exception {
+ if (createNewCore) {
+ CoreContainer cores = h.getCoreContainer();
+ SolrCore core = h.getCore();
+ String dataDir1 = core.getDataDir();
+ CoreDescriptor cd = core.getCoreDescriptor();
+ cores.unload(core.getName());
+ SolrCore createdCore = cores.create(cd);
+ assertEquals(dataDir1, createdCore.getDataDir());
+ assertEquals(createdCore, h.getCore());
+ } else {
+ h.reload();
+ // On regular reloading, wait until the new searcher is registered
+ waitForWarming();
+ }
+
+ assertQ(req("qt", "standard",
+ "q", "*:*"),
+ "//*[@numFound='11']"
+ );
+ }
+
+ private void waitForWarming() throws InterruptedException {
+ RefCounted<SolrIndexSearcher> registeredSearcher = h.getCore().getRegisteredSearcher();
+ RefCounted<SolrIndexSearcher> newestSearcher = h.getCore().getNewestSearcher(false);;
+ while (registeredSearcher == null || registeredSearcher.get() != newestSearcher.get()) {
+ if (registeredSearcher != null) {
+ registeredSearcher.decref();
+ }
+ newestSearcher.decref();
+ Thread.sleep(50);
+ registeredSearcher = h.getCore().getRegisteredSearcher();
+ newestSearcher = h.getCore().getNewestSearcher(false);
+ }
+ registeredSearcher.decref();
+ newestSearcher.decref();
+ }
+
}
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/TermVectorComponentDistributedTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/TermVectorComponentDistributedTest.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/TermVectorComponentDistributedTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/TermVectorComponentDistributedTest.java Sun Feb 8 23:53:14 2015
@@ -22,6 +22,7 @@ import org.apache.lucene.util.Constants;
import org.apache.solr.BaseDistributedSearchTestCase;
import org.apache.solr.common.params.TermVectorParams;
import org.junit.BeforeClass;
+import org.junit.Test;
public class TermVectorComponentDistributedTest extends BaseDistributedSearchTestCase {
@BeforeClass
@@ -30,8 +31,8 @@ public class TermVectorComponentDistribu
Constants.JAVA_VENDOR.startsWith("IBM"));
}
- @Override
- public void doTest() throws Exception {
+ @Test
+ public void test() throws Exception {
handle.clear();
handle.put("timestamp", SKIPVAL);
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/TestExpandComponent.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/TestExpandComponent.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/TestExpandComponent.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/component/TestExpandComponent.java Sun Feb 8 23:53:14 2015
@@ -19,6 +19,7 @@ package org.apache.solr.handler.componen
import org.apache.solr.SolrTestCaseJ4;
import org.apache.solr.common.params.ModifiableSolrParams;
+import org.apache.solr.search.CollapsingQParserPlugin;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
@@ -43,14 +44,54 @@ public class TestExpandComponent extends
assertU(commit());
}
+
+
@Test
public void testExpand() throws Exception {
- final String group = (random().nextBoolean() ? "group_s" : "group_s_dv");
-
- String[] doc = {"id","1", "term_s", "YYYY", group, "group1", "test_ti", "5", "test_tl", "10", "test_tf", "2000", "type_s", "parent"};
+ List<String> groups = new ArrayList();
+ groups.add("group_s");
+ groups.add("group_s_dv");
+
+ Collections.shuffle(groups, random());
+ String floatAppend = "";
+
+ String hint = (random().nextBoolean() ? " hint="+ CollapsingQParserPlugin.HINT_TOP_FC : "");
+
+ _testExpand(groups.get(0), floatAppend, hint);
+ }
+
+ @Test
+ public void testNumericExpand() throws Exception {
+ List<String> groups = new ArrayList();
+ groups.add("group_i");
+ groups.add("group_ti_dv");
+ groups.add("group_f");
+ groups.add("group_tf_dv");
+ Collections.shuffle(groups, random());
+ String floatAppend = "";
+ if(groups.get(0).indexOf("f") > -1) {
+ floatAppend = "."+random().nextInt(100); //Append the float
+ floatAppend = Float.toString(Float.parseFloat(floatAppend)); //Create a proper float out of the string.
+ floatAppend = floatAppend.substring(1); //Drop off the leading 0, leaving just the decimal
+ }
+
+ String hint = "";
+
+ _testExpand(groups.get(0), floatAppend, hint);
+ }
+
+ private void _testExpand(String group, String floatAppend, String hint) throws Exception {
+
+ String[] doc = {"id","1", "term_s", "YYYY", group, "1"+floatAppend, "test_ti", "5",
+
+
+
+
+
+ "test_tl", "10", "test_tf", "2000", "type_s", "parent"};
assertU(adoc(doc));
assertU(commit());
- String[] doc1 = {"id","2", "term_s","YYYY", group, "group1", "test_ti", "50", "test_tl", "100", "test_tf", "200", "type_s", "child"};
+ String[] doc1 = {"id","2", "term_s","YYYY", group, "1"+floatAppend, "test_ti", "50", "test_tl", "100", "test_tf", "200", "type_s", "child"};
assertU(adoc(doc1));
String[] doc2 = {"id","3", "term_s", "YYYY", "test_ti", "5000", "test_tl", "100", "test_tf", "200"};
@@ -60,17 +101,17 @@ public class TestExpandComponent extends
assertU(adoc(doc3));
- String[] doc4 = {"id","5", "term_s", "YYYY", group, "group2", "test_ti", "4", "test_tl", "10", "test_tf", "2000", "type_s", "parent"};
+ String[] doc4 = {"id","5", "term_s", "YYYY", group, "2"+floatAppend, "test_ti", "4", "test_tl", "10", "test_tf", "2000", "type_s", "parent"};
assertU(adoc(doc4));
assertU(commit());
- String[] doc5 = {"id","6", "term_s","YYYY", group, "group2", "test_ti", "10", "test_tl", "100", "test_tf", "200", "type_s", "child"};
+ String[] doc5 = {"id","6", "term_s","YYYY", group, "2"+floatAppend, "test_ti", "10", "test_tl", "100", "test_tf", "200", "type_s", "child"};
assertU(adoc(doc5));
assertU(commit());
- String[] doc6 = {"id","7", "term_s", "YYYY", group, "group1", "test_ti", "1", "test_tl", "100000", "test_tf", "2000", "type_s", "child"};
+ String[] doc6 = {"id","7", "term_s", "YYYY", group, "1"+floatAppend, "test_ti", "1", "test_tl", "100000", "test_tf", "2000", "type_s", "child"};
assertU(adoc(doc6));
assertU(commit());
- String[] doc7 = {"id","8", "term_s","YYYY", group, "group2", "test_ti", "2", "test_tl", "100000", "test_tf", "200", "type_s", "child"};
+ String[] doc7 = {"id","8", "term_s","YYYY", group, "2"+floatAppend, "test_ti", "2", "test_tl", "100000", "test_tf", "200", "type_s", "child"};
assertU(adoc(doc7));
assertU(commit());
@@ -78,7 +119,7 @@ public class TestExpandComponent extends
//First basic test case.
ModifiableSolrParams params = new ModifiableSolrParams();
params.add("q", "*:*");
- params.add("fq", "{!collapse field="+group+"}");
+ params.add("fq", "{!collapse field="+group+hint+"}");
params.add("defType", "edismax");
params.add("bf", "field(test_ti)");
params.add("expand", "true");
@@ -86,17 +127,17 @@ public class TestExpandComponent extends
"*[count(/response/lst[@name='expanded']/result)=2]",
"/response/result/doc[1]/float[@name='id'][.='2.0']",
"/response/result/doc[2]/float[@name='id'][.='6.0']",
- "/response/lst[@name='expanded']/result[@name='group1']/doc[1]/float[@name='id'][.='1.0']",
- "/response/lst[@name='expanded']/result[@name='group1']/doc[2]/float[@name='id'][.='7.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[1]/float[@name='id'][.='5.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[2]/float[@name='id'][.='8.0']"
+ "/response/lst[@name='expanded']/result[@name='1"+floatAppend+"']/doc[1]/float[@name='id'][.='1.0']",
+ "/response/lst[@name='expanded']/result[@name='1"+floatAppend+"']/doc[2]/float[@name='id'][.='7.0']",
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[1]/float[@name='id'][.='5.0']",
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[2]/float[@name='id'][.='8.0']"
);
//Basic test case page 2
params = new ModifiableSolrParams();
params.add("q", "*:*");
- params.add("fq", "{!collapse field="+group+"}");
+ params.add("fq", "{!collapse field="+group+hint+"}");
params.add("defType", "edismax");
params.add("bf", "field(test_ti)");
params.add("expand", "true");
@@ -105,14 +146,14 @@ public class TestExpandComponent extends
assertQ(req(params), "*[count(/response/result/doc)=1]",
"*[count(/response/lst[@name='expanded']/result)=1]",
"/response/result/doc[1]/float[@name='id'][.='6.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[1]/float[@name='id'][.='5.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[2]/float[@name='id'][.='8.0']"
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[1]/float[@name='id'][.='5.0']",
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[2]/float[@name='id'][.='8.0']"
);
//Test expand.sort
params = new ModifiableSolrParams();
params.add("q", "*:*");
- params.add("fq", "{!collapse field="+group+"}");
+ params.add("fq", "{!collapse field="+group+hint+"}");
params.add("defType", "edismax");
params.add("bf", "field(test_ti)");
params.add("expand", "true");
@@ -121,17 +162,17 @@ public class TestExpandComponent extends
"*[count(/response/lst[@name='expanded']/result)=2]",
"/response/result/doc[1]/float[@name='id'][.='2.0']",
"/response/result/doc[2]/float[@name='id'][.='6.0']",
- "/response/lst[@name='expanded']/result[@name='group1']/doc[1]/float[@name='id'][.='7.0']",
- "/response/lst[@name='expanded']/result[@name='group1']/doc[2]/float[@name='id'][.='1.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[1]/float[@name='id'][.='8.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[2]/float[@name='id'][.='5.0']"
+ "/response/lst[@name='expanded']/result[@name='1"+floatAppend+"']/doc[1]/float[@name='id'][.='7.0']",
+ "/response/lst[@name='expanded']/result[@name='1"+floatAppend+"']/doc[2]/float[@name='id'][.='1.0']",
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[1]/float[@name='id'][.='8.0']",
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[2]/float[@name='id'][.='5.0']"
);
//Test with nullPolicy, ExpandComponent should ignore docs with null values in the collapse fields.
//Main result set should include the doc with null value in the collapse field.
params = new ModifiableSolrParams();
params.add("q", "*:*");
- params.add("fq", "{!collapse field="+group+" nullPolicy=collapse}");
+ params.add("fq", "{!collapse field="+group+hint+" nullPolicy=collapse}");
params.add("defType", "edismax");
params.add("bf", "field(test_ti)");
params.add("expand", "true");
@@ -141,10 +182,10 @@ public class TestExpandComponent extends
"/response/result/doc[1]/float[@name='id'][.='3.0']",
"/response/result/doc[2]/float[@name='id'][.='2.0']",
"/response/result/doc[3]/float[@name='id'][.='6.0']",
- "/response/lst[@name='expanded']/result[@name='group1']/doc[1]/float[@name='id'][.='7.0']",
- "/response/lst[@name='expanded']/result[@name='group1']/doc[2]/float[@name='id'][.='1.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[1]/float[@name='id'][.='8.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[2]/float[@name='id'][.='5.0']"
+ "/response/lst[@name='expanded']/result[@name='1"+floatAppend+"']/doc[1]/float[@name='id'][.='7.0']",
+ "/response/lst[@name='expanded']/result[@name='1"+floatAppend+"']/doc[2]/float[@name='id'][.='1.0']",
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[1]/float[@name='id'][.='8.0']",
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[2]/float[@name='id'][.='5.0']"
);
@@ -162,10 +203,10 @@ public class TestExpandComponent extends
"*[count(/response/lst[@name='expanded']/result)=2]",
"/response/result/doc[1]/float[@name='id'][.='1.0']",
"/response/result/doc[2]/float[@name='id'][.='5.0']",
- "/response/lst[@name='expanded']/result[@name='group1']/doc[1]/float[@name='id'][.='7.0']",
- "/response/lst[@name='expanded']/result[@name='group1']/doc[2]/float[@name='id'][.='2.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[1]/float[@name='id'][.='8.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[2]/float[@name='id'][.='6.0']"
+ "/response/lst[@name='expanded']/result[@name='1"+floatAppend+"']/doc[1]/float[@name='id'][.='7.0']",
+ "/response/lst[@name='expanded']/result[@name='1"+floatAppend+"']/doc[2]/float[@name='id'][.='2.0']",
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[1]/float[@name='id'][.='8.0']",
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[2]/float[@name='id'][.='6.0']"
);
@@ -184,10 +225,10 @@ public class TestExpandComponent extends
"*[count(/response/lst[@name='expanded']/result)=2]",
"/response/result/doc[1]/float[@name='id'][.='1.0']",
"/response/result/doc[2]/float[@name='id'][.='5.0']",
- "/response/lst[@name='expanded']/result[@name='group1']/doc[1]/float[@name='id'][.='7.0']",
- "/response/lst[@name='expanded']/result[@name='group1']/doc[2]/float[@name='id'][.='2.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[1]/float[@name='id'][.='8.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[2]/float[@name='id'][.='6.0']"
+ "/response/lst[@name='expanded']/result[@name='1"+floatAppend+"']/doc[1]/float[@name='id'][.='7.0']",
+ "/response/lst[@name='expanded']/result[@name='1"+floatAppend+"']/doc[2]/float[@name='id'][.='2.0']",
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[1]/float[@name='id'][.='8.0']",
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[2]/float[@name='id'][.='6.0']"
);
//Test overide expand.fq and expand.q
@@ -206,17 +247,17 @@ public class TestExpandComponent extends
"*[count(/response/lst[@name='expanded']/result)=2]",
"/response/result/doc[1]/float[@name='id'][.='1.0']",
"/response/result/doc[2]/float[@name='id'][.='5.0']",
- "/response/lst[@name='expanded']/result[@name='group1']/doc[1]/float[@name='id'][.='7.0']",
- "/response/lst[@name='expanded']/result[@name='group1']/doc[2]/float[@name='id'][.='2.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[1]/float[@name='id'][.='8.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[2]/float[@name='id'][.='6.0']"
+ "/response/lst[@name='expanded']/result[@name='1"+floatAppend+"']/doc[1]/float[@name='id'][.='7.0']",
+ "/response/lst[@name='expanded']/result[@name='1"+floatAppend+"']/doc[2]/float[@name='id'][.='2.0']",
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[1]/float[@name='id'][.='8.0']",
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[2]/float[@name='id'][.='6.0']"
);
//Test expand.rows
params = new ModifiableSolrParams();
params.add("q", "*:*");
- params.add("fq", "{!collapse field="+group+"}");
+ params.add("fq", "{!collapse field="+group+hint+"}");
params.add("defType", "edismax");
params.add("bf", "field(test_ti)");
params.add("expand", "true");
@@ -224,12 +265,12 @@ public class TestExpandComponent extends
params.add("expand.rows", "1");
assertQ(req(params), "*[count(/response/result/doc)=2]",
"*[count(/response/lst[@name='expanded']/result)=2]",
- "*[count(/response/lst[@name='expanded']/result[@name='group1']/doc)=1]",
- "*[count(/response/lst[@name='expanded']/result[@name='group2']/doc)=1]",
+ "*[count(/response/lst[@name='expanded']/result[@name='1"+floatAppend+"']/doc)=1]",
+ "*[count(/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc)=1]",
"/response/result/doc[1]/float[@name='id'][.='2.0']",
"/response/result/doc[2]/float[@name='id'][.='6.0']",
- "/response/lst[@name='expanded']/result[@name='group1']/doc[1]/float[@name='id'][.='7.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[1]/float[@name='id'][.='8.0']"
+ "/response/lst[@name='expanded']/result[@name='1"+floatAppend+"']/doc[1]/float[@name='id'][.='7.0']",
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[1]/float[@name='id'][.='8.0']"
);
@@ -237,7 +278,7 @@ public class TestExpandComponent extends
params = new ModifiableSolrParams();
params.add("q", "test_ti:5");
- params.add("fq", "{!collapse field="+group+"}");
+ params.add("fq", "{!collapse field="+group+hint+"}");
params.add("defType", "edismax");
params.add("bf", "field(test_ti)");
params.add("expand", "true");
@@ -251,7 +292,7 @@ public class TestExpandComponent extends
params = new ModifiableSolrParams();
params.add("q", "test_ti:5532535");
- params.add("fq", "{!collapse field="+group+"}");
+ params.add("fq", "{!collapse field="+group+hint+"}");
params.add("defType", "edismax");
params.add("bf", "field(test_ti)");
params.add("expand", "true");
@@ -265,7 +306,7 @@ public class TestExpandComponent extends
params = new ModifiableSolrParams();
params.add("q", "*:*");
- params.add("fq", "{!collapse field="+group+"}");
+ params.add("fq", "{!collapse field="+group+hint+"}");
params.add("defType", "edismax");
params.add("bf", "field(test_ti)");
params.add("expand", "true");
@@ -274,10 +315,10 @@ public class TestExpandComponent extends
"*[count(/response/lst[@name='expanded']/result)=2]",
"/response/result/doc[1]/float[@name='id'][.='2.0']",
"/response/result/doc[2]/float[@name='id'][.='6.0']",
- "/response/lst[@name='expanded']/result[@name='group1']/doc[1]/float[@name='id'][.='1.0']",
- "/response/lst[@name='expanded']/result[@name='group1']/doc[2]/float[@name='id'][.='7.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[1]/float[@name='id'][.='5.0']",
- "/response/lst[@name='expanded']/result[@name='group2']/doc[2]/float[@name='id'][.='8.0']"
+ "/response/lst[@name='expanded']/result[@name='1"+floatAppend+"']/doc[1]/float[@name='id'][.='1.0']",
+ "/response/lst[@name='expanded']/result[@name='1"+floatAppend+"']/doc[2]/float[@name='id'][.='7.0']",
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[1]/float[@name='id'][.='5.0']",
+ "/response/lst[@name='expanded']/result[@name='2"+floatAppend+"']/doc[2]/float[@name='id'][.='8.0']"
);
}
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/highlight/DummyHighlighter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/highlight/DummyHighlighter.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/highlight/DummyHighlighter.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/highlight/DummyHighlighter.java Sun Feb 8 23:53:14 2015
@@ -16,15 +16,14 @@
*/
package org.apache.solr.highlight;
-import java.io.IOException;
-
import org.apache.lucene.search.Query;
import org.apache.solr.common.util.NamedList;
import org.apache.solr.common.util.SimpleOrderedMap;
-import org.apache.solr.core.SolrConfig;
import org.apache.solr.request.SolrQueryRequest;
import org.apache.solr.search.DocList;
+import java.io.IOException;
+
public class DummyHighlighter extends SolrHighlighter {
@Override
@@ -35,9 +34,4 @@ public class DummyHighlighter extends So
return fragments;
}
- @Override
- public void initalize(SolrConfig config) {
- // do nothing
- }
-
}
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/highlight/HighlighterTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/highlight/HighlighterTest.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/highlight/HighlighterTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/highlight/HighlighterTest.java Sun Feb 8 23:53:14 2015
@@ -17,17 +17,27 @@
package org.apache.solr.highlight;
+import java.io.IOException;
import java.util.Arrays;
+import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.TokenStream;
import org.apache.lucene.analysis.core.WhitespaceAnalyzer;
+import org.apache.lucene.index.Term;
+import org.apache.lucene.search.Query;
+import org.apache.lucene.search.spans.SpanPayloadCheckQuery;
+import org.apache.lucene.search.spans.SpanTermQuery;
import org.apache.solr.SolrTestCaseJ4;
import org.apache.solr.common.params.HighlightParams;
import org.apache.solr.handler.component.HighlightComponent;
+import org.apache.solr.handler.component.ResponseBuilder;
+import org.apache.solr.handler.component.SearchComponent;
import org.apache.solr.request.SolrQueryRequest;
+import org.apache.solr.response.SolrQueryResponse;
+import org.apache.solr.search.DocSet;
import org.apache.solr.util.TestHarness;
import org.junit.After;
import org.junit.BeforeClass;
@@ -1053,4 +1063,37 @@ public class HighlighterTest extends Sol
);
}
+
+ @Test
+ public void payloadFilteringSpanQuery() throws IOException {
+ clearIndex();
+
+ String FIELD_NAME = "payloadDelimited";
+ assertU(adoc("id", "0", FIELD_NAME, "word|7 word|2"));
+ assertU(commit());
+
+ //We search at a lower level than typical Solr tests because there's no QParser for payloads
+
+ //Create query matching this payload
+ Query query = new SpanPayloadCheckQuery(new SpanTermQuery(new Term(FIELD_NAME, "word")),
+ Collections.singleton(new byte[]{0,0,0,7}));//bytes for integer 7
+
+ //invoke highlight component... the hard way
+ final SearchComponent hlComp = h.getCore().getSearchComponent("highlight");
+ SolrQueryRequest req = req("hl", "true", "hl.fl", FIELD_NAME, HighlightParams.USE_PHRASE_HIGHLIGHTER, "true");
+ try {
+ SolrQueryResponse resp = new SolrQueryResponse();
+ ResponseBuilder rb = new ResponseBuilder(req, resp, Collections.singletonList(hlComp));
+ rb.setHighlightQuery(query);
+ rb.setResults(req.getSearcher().getDocListAndSet(query, (DocSet) null, null, 0, 1));
+ //highlight:
+ hlComp.prepare(rb);
+ hlComp.process(rb);
+ //inspect response
+ final String[] snippets = (String[]) resp.getValues().findRecursive("highlighting", "0", FIELD_NAME);
+ assertEquals("<em>word|7</em> word|2", snippets[0]);
+ } finally {
+ req.close();
+ }
+ }
}
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/SolrRestletTestBase.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/SolrRestletTestBase.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/SolrRestletTestBase.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/SolrRestletTestBase.java Sun Feb 8 23:53:14 2015
@@ -21,6 +21,8 @@ import org.eclipse.jetty.servlet.Servlet
import org.junit.BeforeClass;
import org.restlet.ext.servlet.ServerServlet;
+import java.nio.file.Path;
+import java.util.Properties;
import java.util.SortedMap;
import java.util.TreeMap;
@@ -42,11 +44,25 @@ abstract public class SolrRestletTestBas
*/
@BeforeClass
public static void init() throws Exception {
+
+ Path tempDir = createTempDir();
+ Path coresDir = tempDir.resolve("cores");
+
+ System.setProperty("coreRootDirectory", coresDir.toString());
+ System.setProperty("configSetBaseDir", TEST_HOME());
+
final SortedMap<ServletHolder,String> extraServlets = new TreeMap<>();
final ServletHolder solrSchemaRestApi = new ServletHolder("SolrSchemaRestApi", ServerServlet.class);
solrSchemaRestApi.setInitParameter("org.restlet.application", "org.apache.solr.rest.SolrSchemaRestApi");
extraServlets.put(solrSchemaRestApi, "/schema/*"); // '/schema/*' matches '/schema', '/schema/', and '/schema/whatever...'
+ Properties props = new Properties();
+ props.setProperty("name", DEFAULT_TEST_CORENAME);
+ props.setProperty("config", "solrconfig.xml");
+ props.setProperty("schema", "schema-rest.xml");
+ props.setProperty("configSet", "collection1");
+
+ writeCoreProperties(coresDir.resolve("core"), props, "SolrRestletTestBase");
createJettyAndHarness(TEST_HOME(), "solrconfig.xml", "schema-rest.xml", "/solr", true, extraServlets);
}
}
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestBulkSchemaAPI.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestBulkSchemaAPI.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestBulkSchemaAPI.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestBulkSchemaAPI.java Sun Feb 8 23:53:14 2015
@@ -73,6 +73,9 @@ public class TestBulkSchemaAPI extends R
jetty = null;
}
client = null;
+ if (restTestHarness != null) {
+ restTestHarness.close();
+ }
restTestHarness = null;
}
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestCopyFieldCollectionResource.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestCopyFieldCollectionResource.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestCopyFieldCollectionResource.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestCopyFieldCollectionResource.java Sun Feb 8 23:53:14 2015
@@ -23,7 +23,10 @@ public class TestCopyFieldCollectionReso
@Test
public void testGetAllCopyFields() throws Exception {
assertQ("/schema/copyfields?indent=on&wt=xml",
- "/response/arr[@name='copyFields']/lst[ str[@name='source'][.='title']"
+ "/response/arr[@name='copyFields']/lst[ str[@name='source'][.='src_sub_no_ast_i']"
+ +" and str[@name='dest'][.='title']]",
+
+ "/response/arr[@name='copyFields']/lst[ str[@name='source'][.='title']"
+" and str[@name='dest'][.='title_stemmed']"
+" and int[@name='maxChars'][.='200']]",
@@ -65,10 +68,6 @@ public class TestCopyFieldCollectionReso
"/response/arr[@name='copyFields']/lst[ str[@name='source'][.='src_sub_no_ast_i']"
+" and str[@name='sourceDynamicBase'][.='*_i']"
- +" and str[@name='dest'][.='title']]",
-
- "/response/arr[@name='copyFields']/lst[ str[@name='source'][.='src_sub_no_ast_i']"
- +" and str[@name='sourceDynamicBase'][.='*_i']"
+" and str[@name='dest'][.='*_s']]",
"/response/arr[@name='copyFields']/lst[ str[@name='source'][.='src_sub_no_ast_i']"
@@ -105,19 +104,19 @@ public class TestCopyFieldCollectionReso
@Test
public void testJsonGetAllCopyFields() throws Exception {
assertJQ("/schema/copyfields?indent=on&wt=json",
- "/copyFields/[6]=={'source':'title','dest':'dest_sub_no_ast_s','destDynamicBase':'*_s'}",
+ "/copyFields/[1]=={'source':'src_sub_no_ast_i','dest':'title'}",
+ "/copyFields/[7]=={'source':'title','dest':'dest_sub_no_ast_s','destDynamicBase':'*_s'}",
- "/copyFields/[7]=={'source':'*_i','dest':'title'}",
- "/copyFields/[8]=={'source':'*_i','dest':'*_s'}",
- "/copyFields/[9]=={'source':'*_i','dest':'*_dest_sub_s','destDynamicBase':'*_s'}",
- "/copyFields/[10]=={'source':'*_i','dest':'dest_sub_no_ast_s','destDynamicBase':'*_s'}",
-
- "/copyFields/[11]=={'source':'*_src_sub_i','sourceDynamicBase':'*_i','dest':'title'}",
- "/copyFields/[12]=={'source':'*_src_sub_i','sourceDynamicBase':'*_i','dest':'*_s'}",
- "/copyFields/[13]=={'source':'*_src_sub_i','sourceDynamicBase':'*_i','dest':'*_dest_sub_s','destDynamicBase':'*_s'}",
- "/copyFields/[14]=={'source':'*_src_sub_i','sourceDynamicBase':'*_i','dest':'dest_sub_no_ast_s','destDynamicBase':'*_s'}",
+ "/copyFields/[8]=={'source':'*_i','dest':'title'}",
+ "/copyFields/[9]=={'source':'*_i','dest':'*_s'}",
+ "/copyFields/[10]=={'source':'*_i','dest':'*_dest_sub_s','destDynamicBase':'*_s'}",
+ "/copyFields/[11]=={'source':'*_i','dest':'dest_sub_no_ast_s','destDynamicBase':'*_s'}",
+
+ "/copyFields/[12]=={'source':'*_src_sub_i','sourceDynamicBase':'*_i','dest':'title'}",
+ "/copyFields/[13]=={'source':'*_src_sub_i','sourceDynamicBase':'*_i','dest':'*_s'}",
+ "/copyFields/[14]=={'source':'*_src_sub_i','sourceDynamicBase':'*_i','dest':'*_dest_sub_s','destDynamicBase':'*_s'}",
+ "/copyFields/[15]=={'source':'*_src_sub_i','sourceDynamicBase':'*_i','dest':'dest_sub_no_ast_s','destDynamicBase':'*_s'}",
- "/copyFields/[15]=={'source':'src_sub_no_ast_i','sourceDynamicBase':'*_i','dest':'title'}",
"/copyFields/[16]=={'source':'src_sub_no_ast_i','sourceDynamicBase':'*_i','dest':'*_s'}",
"/copyFields/[17]=={'source':'src_sub_no_ast_i','sourceDynamicBase':'*_i','dest':'*_dest_sub_s','destDynamicBase':'*_s'}",
"/copyFields/[18]=={'source':'src_sub_no_ast_i','sourceDynamicBase':'*_i','dest':'dest_sub_no_ast_s','destDynamicBase':'*_s'}");
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestManagedSchemaDynamicFieldResource.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestManagedSchemaDynamicFieldResource.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestManagedSchemaDynamicFieldResource.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestManagedSchemaDynamicFieldResource.java Sun Feb 8 23:53:14 2015
@@ -16,11 +16,6 @@ package org.apache.solr.rest.schema;
* limitations under the License.
*/
-import java.io.File;
-import java.util.SortedMap;
-import java.util.TreeMap;
-import java.util.regex.Pattern;
-
import org.apache.commons.io.FileUtils;
import org.apache.solr.util.RestTestBase;
import org.eclipse.jetty.servlet.ServletHolder;
@@ -29,6 +24,11 @@ import org.junit.Before;
import org.junit.Test;
import org.restlet.ext.servlet.ServerServlet;
+import java.io.File;
+import java.util.SortedMap;
+import java.util.TreeMap;
+import java.util.regex.Pattern;
+
public class TestManagedSchemaDynamicFieldResource extends RestTestBase {
private static File tmpSolrHome;
@@ -63,6 +63,9 @@ public class TestManagedSchemaDynamicFie
jetty = null;
}
client = null;
+ if (restTestHarness != null) {
+ restTestHarness.close();
+ }
restTestHarness = null;
}
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestManagedSchemaFieldResource.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestManagedSchemaFieldResource.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestManagedSchemaFieldResource.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestManagedSchemaFieldResource.java Sun Feb 8 23:53:14 2015
@@ -16,11 +16,6 @@ package org.apache.solr.rest.schema;
* limitations under the License.
*/
-import java.io.File;
-import java.util.SortedMap;
-import java.util.TreeMap;
-import java.util.regex.Pattern;
-
import org.apache.commons.io.FileUtils;
import org.apache.solr.util.RestTestBase;
import org.eclipse.jetty.servlet.ServletHolder;
@@ -29,6 +24,11 @@ import org.junit.Before;
import org.junit.Test;
import org.restlet.ext.servlet.ServerServlet;
+import java.io.File;
+import java.util.SortedMap;
+import java.util.TreeMap;
+import java.util.regex.Pattern;
+
public class TestManagedSchemaFieldResource extends RestTestBase {
private static File tmpSolrHome;
@@ -63,6 +63,9 @@ public class TestManagedSchemaFieldResou
jetty = null;
}
client = null;
+ if (restTestHarness != null) {
+ restTestHarness.close();
+ }
restTestHarness = null;
}
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestManagedSchemaFieldTypeResource.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestManagedSchemaFieldTypeResource.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestManagedSchemaFieldTypeResource.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestManagedSchemaFieldTypeResource.java Sun Feb 8 23:53:14 2015
@@ -66,6 +66,11 @@ public class TestManagedSchemaFieldTypeR
jetty = null;
System.clearProperty("managed.schema.mutable");
System.clearProperty("enable.update.log");
+
+ if (restTestHarness != null) {
+ restTestHarness.close();
+ }
+ restTestHarness = null;
}
@Test
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaResource.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaResource.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaResource.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaResource.java Sun Feb 8 23:53:14 2015
@@ -131,19 +131,19 @@ public class TestSchemaResource extends
"/schema/dynamicFields/[1]/name=='ignored_*'",
"/schema/dynamicFields/[2]/name=='*_mfacet'",
- "/schema/copyFields/[6]=={'source':'title','dest':'dest_sub_no_ast_s'}",
+ "/schema/copyFields/[1]=={'source':'src_sub_no_ast_i','dest':'title'}",
- "/schema/copyFields/[7]=={'source':'*_i','dest':'title'}",
- "/schema/copyFields/[8]=={'source':'*_i','dest':'*_s'}",
- "/schema/copyFields/[9]=={'source':'*_i','dest':'*_dest_sub_s'}",
- "/schema/copyFields/[10]=={'source':'*_i','dest':'dest_sub_no_ast_s'}",
+ "/schema/copyFields/[7]=={'source':'title','dest':'dest_sub_no_ast_s'}",
+ "/schema/copyFields/[8]=={'source':'*_i','dest':'title'}",
+ "/schema/copyFields/[9]=={'source':'*_i','dest':'*_s'}",
+ "/schema/copyFields/[10]=={'source':'*_i','dest':'*_dest_sub_s'}",
+ "/schema/copyFields/[11]=={'source':'*_i','dest':'dest_sub_no_ast_s'}",
- "/schema/copyFields/[11]=={'source':'*_src_sub_i','dest':'title'}",
- "/schema/copyFields/[12]=={'source':'*_src_sub_i','dest':'*_s'}",
- "/schema/copyFields/[13]=={'source':'*_src_sub_i','dest':'*_dest_sub_s'}",
- "/schema/copyFields/[14]=={'source':'*_src_sub_i','dest':'dest_sub_no_ast_s'}",
+ "/schema/copyFields/[12]=={'source':'*_src_sub_i','dest':'title'}",
+ "/schema/copyFields/[13]=={'source':'*_src_sub_i','dest':'*_s'}",
+ "/schema/copyFields/[14]=={'source':'*_src_sub_i','dest':'*_dest_sub_s'}",
+ "/schema/copyFields/[15]=={'source':'*_src_sub_i','dest':'dest_sub_no_ast_s'}",
- "/schema/copyFields/[15]=={'source':'src_sub_no_ast_i','dest':'title'}",
"/schema/copyFields/[16]=={'source':'src_sub_no_ast_i','dest':'*_s'}",
"/schema/copyFields/[17]=={'source':'src_sub_no_ast_i','dest':'*_dest_sub_s'}",
"/schema/copyFields/[18]=={'source':'src_sub_no_ast_i','dest':'dest_sub_no_ast_s'}");
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/analysis/TestManagedStopFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/analysis/TestManagedStopFilterFactory.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/analysis/TestManagedStopFilterFactory.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/analysis/TestManagedStopFilterFactory.java Sun Feb 8 23:53:14 2015
@@ -66,6 +66,11 @@ public class TestManagedStopFilterFactor
jetty = null;
System.clearProperty("managed.schema.mutable");
System.clearProperty("enable.update.log");
+
+ if (restTestHarness != null) {
+ restTestHarness.close();
+ }
+ restTestHarness = null;
}
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/analysis/TestManagedSynonymFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/analysis/TestManagedSynonymFilterFactory.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/analysis/TestManagedSynonymFilterFactory.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/rest/schema/analysis/TestManagedSynonymFilterFactory.java Sun Feb 8 23:53:14 2015
@@ -63,6 +63,11 @@ public class TestManagedSynonymFilterFac
FileUtils.deleteDirectory(tmpSolrHome);
System.clearProperty("managed.schema.mutable");
System.clearProperty("enable.update.log");
+
+ if (restTestHarness != null) {
+ restTestHarness.close();
+ }
+ restTestHarness = null;
}
@Test
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/schema/TestBinaryField.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/schema/TestBinaryField.java?rev=1658277&r1=1658276&r2=1658277&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/schema/TestBinaryField.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/schema/TestBinaryField.java Sun Feb 8 23:53:14 2015
@@ -14,11 +14,14 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
package org.apache.solr.schema;
+import com.google.common.base.Charsets;
import org.apache.commons.io.FileUtils;
import org.apache.solr.SolrJettyTestBase;
import org.apache.solr.SolrTestCaseJ4;
+import org.apache.solr.SolrTestCaseJ4.SuppressSSL;
import org.apache.solr.client.solrj.SolrClient;
import org.apache.solr.client.solrj.SolrQuery;
import org.apache.solr.client.solrj.beans.Field;
@@ -29,9 +32,14 @@ import org.apache.solr.common.SolrInputD
import org.junit.BeforeClass;
import java.io.File;
+import java.io.OutputStreamWriter;
+import java.io.Writer;
import java.nio.ByteBuffer;
+import java.nio.file.Files;
import java.util.List;
+import java.util.Properties;
+@SuppressSSL(bugUrl = "https://issues.apache.org/jira/browse/SOLR-5776")
public class TestBinaryField extends SolrJettyTestBase {
@BeforeClass
@@ -57,94 +65,102 @@ public class TestBinaryField extends Sol
FileUtils.copyFile(new File(src_dir, "solrconfig.snippet.randomindexconfig.xml"),
new File(confDir, "solrconfig.snippet.randomindexconfig.xml"));
+ try (Writer w = new OutputStreamWriter(Files.newOutputStream(collDir.toPath().resolve("core.properties")), Charsets.UTF_8)) {
+ Properties coreProps = new Properties();
+ coreProps.put("name", "collection1");
+ coreProps.store(w, "");
+ }
+
createJetty(homeDir.getAbsolutePath(), null, null);
}
public void testSimple() throws Exception {
- SolrClient client = getSolrClient();
- byte[] buf = new byte[10];
- for (int i = 0; i < 10; i++) {
- buf[i] = (byte) i;
- }
- SolrInputDocument doc = null;
- doc = new SolrInputDocument();
- doc.addField("id", 1);
- doc.addField("data", ByteBuffer.wrap(buf, 2, 5));
- client.add(doc);
-
- doc = new SolrInputDocument();
- doc.addField("id", 2);
- doc.addField("data", ByteBuffer.wrap(buf, 4, 3));
- client.add(doc);
-
- doc = new SolrInputDocument();
- doc.addField("id", 3);
- doc.addField("data", buf);
- client.add(doc);
-
- client.commit();
-
- QueryResponse resp = client.query(new SolrQuery("*:*"));
- SolrDocumentList res = resp.getResults();
- List<Bean> beans = resp.getBeans(Bean.class);
- assertEquals(3, res.size());
- assertEquals(3, beans.size());
- for (SolrDocument d : res) {
- Integer id = (Integer) d.getFieldValue("id");
- byte[] data = (byte[]) d.getFieldValue("data");
- if (id == 1) {
- assertEquals(5, data.length);
- for (int i = 0; i < data.length; i++) {
- byte b = data[i];
- assertEquals((byte)(i + 2), b);
- }
-
- } else if (id == 2) {
- assertEquals(3, data.length);
- for (int i = 0; i < data.length; i++) {
- byte b = data[i];
- assertEquals((byte)(i + 4), b);
- }
-
-
- } else if (id == 3) {
- assertEquals(10, data.length);
- for (int i = 0; i < data.length; i++) {
- byte b = data[i];
- assertEquals((byte)i, b);
- }
-
+ try (SolrClient client = getSolrClient()) {
+ byte[] buf = new byte[10];
+ for (int i = 0; i < 10; i++) {
+ buf[i] = (byte) i;
}
+ SolrInputDocument doc = null;
+ doc = new SolrInputDocument();
+ doc.addField("id", 1);
+ doc.addField("data", ByteBuffer.wrap(buf, 2, 5));
+ client.add(doc);
+
+ doc = new SolrInputDocument();
+ doc.addField("id", 2);
+ doc.addField("data", ByteBuffer.wrap(buf, 4, 3));
+ client.add(doc);
+
+ doc = new SolrInputDocument();
+ doc.addField("id", 3);
+ doc.addField("data", buf);
+ client.add(doc);
+
+ client.commit();
+
+ QueryResponse resp = client.query(new SolrQuery("*:*"));
+ SolrDocumentList res = resp.getResults();
+ List<Bean> beans = resp.getBeans(Bean.class);
+ assertEquals(3, res.size());
+ assertEquals(3, beans.size());
+ for (SolrDocument d : res) {
+
+ Integer id = (Integer) d.getFieldValue("id");
+ byte[] data = (byte[]) d.getFieldValue("data");
+ if (id == 1) {
+ assertEquals(5, data.length);
+ for (int i = 0; i < data.length; i++) {
+ byte b = data[i];
+ assertEquals((byte) (i + 2), b);
+ }
+
+ } else if (id == 2) {
+ assertEquals(3, data.length);
+ for (int i = 0; i < data.length; i++) {
+ byte b = data[i];
+ assertEquals((byte) (i + 4), b);
+ }
+
+
+ } else if (id == 3) {
+ assertEquals(10, data.length);
+ for (int i = 0; i < data.length; i++) {
+ byte b = data[i];
+ assertEquals((byte) i, b);
+ }
- }
- for (Bean d : beans) {
- Integer id = d.id;
- byte[] data = d.data;
- if (id == 1) {
- assertEquals(5, data.length);
- for (int i = 0; i < data.length; i++) {
- byte b = data[i];
- assertEquals((byte)(i + 2), b);
- }
-
- } else if (id == 2) {
- assertEquals(3, data.length);
- for (int i = 0; i < data.length; i++) {
- byte b = data[i];
- assertEquals((byte)(i + 4), b);
}
+ }
+ for (Bean d : beans) {
+ Integer id = d.id;
+ byte[] data = d.data;
+ if (id == 1) {
+ assertEquals(5, data.length);
+ for (int i = 0; i < data.length; i++) {
+ byte b = data[i];
+ assertEquals((byte) (i + 2), b);
+ }
+
+ } else if (id == 2) {
+ assertEquals(3, data.length);
+ for (int i = 0; i < data.length; i++) {
+ byte b = data[i];
+ assertEquals((byte) (i + 4), b);
+ }
+
+
+ } else if (id == 3) {
+ assertEquals(10, data.length);
+ for (int i = 0; i < data.length; i++) {
+ byte b = data[i];
+ assertEquals((byte) i, b);
+ }
- } else if (id == 3) {
- assertEquals(10, data.length);
- for (int i = 0; i < data.length; i++) {
- byte b = data[i];
- assertEquals((byte)i, b);
}
}
-
}
}