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/01/04 15:53:21 UTC
svn commit: r1649347 [24/31] - in /lucene/dev/branches/lucene6005: ./
dev-tools/ dev-tools/idea/solr/contrib/dataimporthandler-extras/
dev-tools/idea/solr/contrib/extraction/
dev-tools/idea/solr/contrib/map-reduce/
dev-tools/idea/solr/contrib/velocity/...
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/UnloadDistributedZkTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/UnloadDistributedZkTest.java?rev=1649347&r1=1649346&r2=1649347&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/UnloadDistributedZkTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/UnloadDistributedZkTest.java Sun Jan 4 14:53:12 2015
@@ -17,19 +17,12 @@ package org.apache.solr.cloud;
* limitations under the License.
*/
-import java.io.File;
-import java.io.IOException;
-import java.util.Random;
-import java.util.concurrent.SynchronousQueue;
-import java.util.concurrent.ThreadPoolExecutor;
-import java.util.concurrent.TimeUnit;
-
-import org.apache.solr.SolrTestCaseJ4.SuppressSSL;
import org.apache.lucene.util.LuceneTestCase.Slow;
+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.SolrServer;
import org.apache.solr.client.solrj.SolrServerException;
-import org.apache.solr.client.solrj.impl.HttpSolrServer;
+import org.apache.solr.client.solrj.impl.HttpSolrClient;
import org.apache.solr.client.solrj.request.CoreAdminRequest.Create;
import org.apache.solr.client.solrj.request.CoreAdminRequest.Unload;
import org.apache.solr.common.SolrInputDocument;
@@ -41,6 +34,13 @@ import org.apache.solr.util.DefaultSolrT
import org.junit.Before;
import org.junit.BeforeClass;
+import java.io.File;
+import java.io.IOException;
+import java.util.Random;
+import java.util.concurrent.SynchronousQueue;
+import java.util.concurrent.ThreadPoolExecutor;
+import java.util.concurrent.TimeUnit;
+
/**
* This test simply does a bunch of basic things in solrcloud mode and asserts things
* work as expected.
@@ -92,12 +92,12 @@ public class UnloadDistributedZkTest ext
createCmd.setDataDir(getDataDir(coreDataDir));
createCmd.setNumShards(2);
- SolrServer client = clients.get(0);
+ SolrClient client = clients.get(0);
String url1 = getBaseUrl(client);
- HttpSolrServer server = new HttpSolrServer(url1);
- server.setConnectionTimeout(15000);
- server.setSoTimeout(60000);
- server.request(createCmd);
+ HttpSolrClient adminClient = new HttpSolrClient(url1);
+ adminClient.setConnectionTimeout(15000);
+ adminClient.setSoTimeout(60000);
+ adminClient.request(createCmd);
createCmd = new Create();
createCmd.setCoreName("test_unload_shard_and_collection_2");
@@ -106,7 +106,7 @@ public class UnloadDistributedZkTest ext
coreDataDir = createTempDir().toFile().getAbsolutePath();
createCmd.setDataDir(getDataDir(coreDataDir));
- server.request(createCmd);
+ adminClient.request(createCmd);
// does not mean they are active and up yet :*
waitForRecoveriesToFinish(collection, false);
@@ -114,10 +114,10 @@ public class UnloadDistributedZkTest ext
// now unload one of the two
Unload unloadCmd = new Unload(false);
unloadCmd.setCoreName("test_unload_shard_and_collection_2");
- server.request(unloadCmd);
+ adminClient.request(unloadCmd);
// there should be only one shard
- int slices = getCommonCloudSolrServer().getZkStateReader().getClusterState().getSlices(collection).size();
+ int slices = getCommonCloudSolrClient().getZkStateReader().getClusterState().getSlices(collection).size();
long timeoutAt = System.currentTimeMillis() + 45000;
while (slices != 1) {
if (System.currentTimeMillis() > timeoutAt) {
@@ -126,20 +126,20 @@ public class UnloadDistributedZkTest ext
}
Thread.sleep(1000);
- slices = getCommonCloudSolrServer().getZkStateReader().getClusterState().getSlices(collection).size();
+ slices = getCommonCloudSolrClient().getZkStateReader().getClusterState().getSlices(collection).size();
}
// now unload one of the other
unloadCmd = new Unload(false);
unloadCmd.setCoreName("test_unload_shard_and_collection_1");
- server.request(unloadCmd);
- server.shutdown();
- server = null;
+ adminClient.request(unloadCmd);
+ adminClient.shutdown();
+ adminClient = null;
//printLayout();
// the collection should be gone
timeoutAt = System.currentTimeMillis() + 30000;
- while (getCommonCloudSolrServer().getZkStateReader().getClusterState().hasCollection(collection)) {
+ while (getCommonCloudSolrClient().getZkStateReader().getClusterState().hasCollection(collection)) {
if (System.currentTimeMillis() > timeoutAt) {
printLayout();
fail("Still found collection");
@@ -157,11 +157,11 @@ public class UnloadDistributedZkTest ext
File tmpDir = createTempDir().toFile();
// create a new collection collection
- SolrServer client = clients.get(0);
+ SolrClient client = clients.get(0);
String url1 = getBaseUrl(client);
- HttpSolrServer server = new HttpSolrServer(url1);
- server.setConnectionTimeout(15000);
- server.setSoTimeout(60000);
+ HttpSolrClient adminClient = new HttpSolrClient(url1);
+ adminClient.setConnectionTimeout(15000);
+ adminClient.setSoTimeout(60000);
Create createCmd = new Create();
createCmd.setCoreName("unloadcollection1");
@@ -169,11 +169,11 @@ public class UnloadDistributedZkTest ext
createCmd.setNumShards(1);
String core1DataDir = tmpDir.getAbsolutePath() + File.separator + System.currentTimeMillis() + "unloadcollection1" + "_1n";
createCmd.setDataDir(getDataDir(core1DataDir));
- server.request(createCmd);
- server.shutdown();
- server = null;
+ adminClient.request(createCmd);
+ adminClient.shutdown();
+ adminClient = null;
- ZkStateReader zkStateReader = getCommonCloudSolrServer().getZkStateReader();
+ ZkStateReader zkStateReader = getCommonCloudSolrClient().getZkStateReader();
zkStateReader.updateClusterState(true);
@@ -182,16 +182,16 @@ public class UnloadDistributedZkTest ext
client = clients.get(1);
String url2 = getBaseUrl(client);
- server = new HttpSolrServer(url2);
+ adminClient = new HttpSolrClient(url2);
createCmd = new Create();
createCmd.setCoreName("unloadcollection2");
createCmd.setCollection("unloadcollection");
String core2dataDir = tmpDir.getAbsolutePath() + File.separator + System.currentTimeMillis() + "unloadcollection1" + "_2n";
createCmd.setDataDir(getDataDir(core2dataDir));
- server.request(createCmd);
- server.shutdown();
- server = null;
+ adminClient.request(createCmd);
+ adminClient.shutdown();
+ adminClient = null;
zkStateReader.updateClusterState(true);
slices = zkStateReader.getClusterState().getCollection("unloadcollection").getSlices().size();
@@ -202,9 +202,9 @@ public class UnloadDistributedZkTest ext
ZkCoreNodeProps leaderProps = getLeaderUrlFromZk("unloadcollection", "shard1");
Random random = random();
- HttpSolrServer collectionClient;
+ HttpSolrClient collectionClient;
if (random.nextBoolean()) {
- collectionClient = new HttpSolrServer(leaderProps.getCoreUrl());
+ collectionClient = new HttpSolrClient(leaderProps.getCoreUrl());
// lets try and use the solrj client to index and retrieve a couple
// documents
SolrInputDocument doc1 = getDoc(id, 6, i1, -600, tlong, 600, t1,
@@ -224,16 +224,16 @@ public class UnloadDistributedZkTest ext
// create another replica for our collection
client = clients.get(2);
String url3 = getBaseUrl(client);
- server = new HttpSolrServer(url3);
+ adminClient = new HttpSolrClient(url3);
createCmd = new Create();
createCmd.setCoreName("unloadcollection3");
createCmd.setCollection("unloadcollection");
String core3dataDir = tmpDir.getAbsolutePath() + File.separator + System.currentTimeMillis() + "unloadcollection" + "_3n";
createCmd.setDataDir(getDataDir(core3dataDir));
- server.request(createCmd);
- server.shutdown();
- server = null;
+ adminClient.request(createCmd);
+ adminClient.shutdown();
+ adminClient = null;
waitForRecoveriesToFinish("unloadcollection", zkStateReader, false);
@@ -241,7 +241,7 @@ public class UnloadDistributedZkTest ext
// so that we start with some versions when we reload...
DirectUpdateHandler2.commitOnClose = false;
- HttpSolrServer addClient = new HttpSolrServer(url3 + "/unloadcollection3");
+ HttpSolrClient addClient = new HttpSolrClient(url3 + "/unloadcollection3");
addClient.setConnectionTimeout(30000);
// add a few docs
@@ -257,7 +257,7 @@ public class UnloadDistributedZkTest ext
//collectionClient.commit();
// unload the leader
- collectionClient = new HttpSolrServer(leaderProps.getBaseUrl());
+ collectionClient = new HttpSolrClient(leaderProps.getBaseUrl());
collectionClient.setConnectionTimeout(15000);
collectionClient.setSoTimeout(30000);
@@ -283,7 +283,7 @@ public class UnloadDistributedZkTest ext
// ensure there is a leader
zkStateReader.getLeaderRetry("unloadcollection", "shard1", 15000);
- addClient = new HttpSolrServer(url2 + "/unloadcollection2");
+ addClient = new HttpSolrClient(url2 + "/unloadcollection2");
addClient.setConnectionTimeout(30000);
addClient.setSoTimeout(90000);
@@ -300,24 +300,24 @@ public class UnloadDistributedZkTest ext
// create another replica for our collection
client = clients.get(3);
String url4 = getBaseUrl(client);
- server = new HttpSolrServer(url4);
- server.setConnectionTimeout(15000);
- server.setSoTimeout(30000);
+ adminClient = new HttpSolrClient(url4);
+ adminClient.setConnectionTimeout(15000);
+ adminClient.setSoTimeout(30000);
createCmd = new Create();
createCmd.setCoreName("unloadcollection4");
createCmd.setCollection("unloadcollection");
String core4dataDir = tmpDir.getAbsolutePath() + File.separator + System.currentTimeMillis() + "unloadcollection" + "_4n";
createCmd.setDataDir(getDataDir(core4dataDir));
- server.request(createCmd);
- server.shutdown();
- server = null;
+ adminClient.request(createCmd);
+ adminClient.shutdown();
+ adminClient = null;
waitForRecoveriesToFinish("unloadcollection", zkStateReader, false);
// unload the leader again
leaderProps = getLeaderUrlFromZk("unloadcollection", "shard1");
- collectionClient = new HttpSolrServer(leaderProps.getBaseUrl());
+ collectionClient = new HttpSolrClient(leaderProps.getBaseUrl());
collectionClient.setConnectionTimeout(15000);
collectionClient.setSoTimeout(30000);
@@ -343,64 +343,64 @@ public class UnloadDistributedZkTest ext
DirectUpdateHandler2.commitOnClose = true;
// bring the downed leader back as replica
- server = new HttpSolrServer(leaderProps.getBaseUrl());
- server.setConnectionTimeout(15000);
- server.setSoTimeout(30000);
+ adminClient = new HttpSolrClient(leaderProps.getBaseUrl());
+ adminClient.setConnectionTimeout(15000);
+ adminClient.setSoTimeout(30000);
createCmd = new Create();
createCmd.setCoreName(leaderProps.getCoreName());
createCmd.setCollection("unloadcollection");
createCmd.setDataDir(getDataDir(core1DataDir));
- server.request(createCmd);
- server.shutdown();
- server = null;
+ adminClient.request(createCmd);
+ adminClient.shutdown();
+ adminClient = null;
waitForRecoveriesToFinish("unloadcollection", zkStateReader, false);
- server = new HttpSolrServer(url2 + "/unloadcollection");
- server.setConnectionTimeout(15000);
- server.setSoTimeout(30000);
- server.commit();
+ adminClient = new HttpSolrClient(url2 + "/unloadcollection");
+ adminClient.setConnectionTimeout(15000);
+ adminClient.setSoTimeout(30000);
+ adminClient.commit();
SolrQuery q = new SolrQuery("*:*");
q.set("distrib", false);
- long found1 = server.query(q).getResults().getNumFound();
- server.shutdown();
- server = new HttpSolrServer(url3 + "/unloadcollection");
- server.setConnectionTimeout(15000);
- server.setSoTimeout(30000);
- server.commit();
+ long found1 = adminClient.query(q).getResults().getNumFound();
+ adminClient.shutdown();
+ adminClient = new HttpSolrClient(url3 + "/unloadcollection");
+ adminClient.setConnectionTimeout(15000);
+ adminClient.setSoTimeout(30000);
+ adminClient.commit();
q = new SolrQuery("*:*");
q.set("distrib", false);
- long found3 = server.query(q).getResults().getNumFound();
- server.shutdown();
- server = new HttpSolrServer(url4 + "/unloadcollection");
- server.setConnectionTimeout(15000);
- server.setSoTimeout(30000);
- server.commit();
+ long found3 = adminClient.query(q).getResults().getNumFound();
+ adminClient.shutdown();
+ adminClient = new HttpSolrClient(url4 + "/unloadcollection");
+ adminClient.setConnectionTimeout(15000);
+ adminClient.setSoTimeout(30000);
+ adminClient.commit();
q = new SolrQuery("*:*");
q.set("distrib", false);
- long found4 = server.query(q).getResults().getNumFound();
+ long found4 = adminClient.query(q).getResults().getNumFound();
// all 3 shards should now have the same number of docs
assertEquals(found1, found3);
assertEquals(found3, found4);
- server.shutdown();
+ adminClient.shutdown();
}
private void testUnloadLotsOfCores() throws Exception {
- SolrServer client = clients.get(2);
+ SolrClient client = clients.get(2);
String url3 = getBaseUrl(client);
- final HttpSolrServer server = new HttpSolrServer(url3);
- server.setConnectionTimeout(15000);
- server.setSoTimeout(60000);
+ final HttpSolrClient adminClient = new HttpSolrClient(url3);
+ adminClient.setConnectionTimeout(15000);
+ adminClient.setSoTimeout(60000);
ThreadPoolExecutor executor = new ThreadPoolExecutor(0, Integer.MAX_VALUE,
5, TimeUnit.SECONDS, new SynchronousQueue<Runnable>(),
new DefaultSolrThreadFactory("testExecutor"));
int cnt = atLeast(3);
// create the cores
- createCores(server, executor, "multiunload", 2, cnt);
+ createCores(adminClient, executor, "multiunload", 2, cnt);
executor.shutdown();
executor.awaitTermination(120, TimeUnit.SECONDS);
@@ -415,7 +415,7 @@ public class UnloadDistributedZkTest ext
Unload unloadCmd = new Unload(true);
unloadCmd.setCoreName("multiunload" + freezeJ);
try {
- server.request(unloadCmd);
+ adminClient.request(unloadCmd);
} catch (SolrServerException e) {
throw new RuntimeException(e);
} catch (IOException e) {
@@ -427,7 +427,7 @@ public class UnloadDistributedZkTest ext
}
executor.shutdown();
executor.awaitTermination(120, TimeUnit.SECONDS);
- server.shutdown();
+ adminClient.shutdown();
}
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/ZkCLITest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/ZkCLITest.java?rev=1649347&r1=1649346&r2=1649347&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/ZkCLITest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/ZkCLITest.java Sun Jan 4 14:53:12 2015
@@ -109,23 +109,6 @@ public class ZkCLITest extends SolrTestC
}
@Test
- public void testBootstrap() throws Exception {
- // test bootstrap_conf
- String[] args = new String[] {"-zkhost", zkServer.getZkAddress(), "-cmd",
- "bootstrap", "-solrhome", this.solrHome};
- ZkCLI.main(args);
-
- assertTrue(zkClient.exists(ZkController.CONFIGS_ZKNODE + "/collection1", true));
-
- args = new String[] {"-zkhost", zkServer.getZkAddress(), "-cmd",
- "bootstrap", "-solrhome", ExternalPaths.EXAMPLE_MULTICORE_HOME};
- ZkCLI.main(args);
-
- assertTrue(zkClient.exists(ZkController.CONFIGS_ZKNODE + "/core0", true));
- assertTrue(zkClient.exists(ZkController.CONFIGS_ZKNODE + "/core1", true));
- }
-
- @Test
public void testBootstrapWithChroot() throws Exception {
String chroot = "/foo/bar";
assertFalse(zkClient.exists(chroot, true));
@@ -161,6 +144,13 @@ public class ZkCLITest extends SolrTestC
zkClient.getData("/data.txt", null, null, true);
assertArrayEquals(zkClient.getData("/data.txt", null, null, true), data.getBytes(StandardCharsets.UTF_8));
+
+ // test re-put to existing
+ data = "my data deux";
+ args = new String[] {"-zkhost", zkServer.getZkAddress(), "-cmd",
+ "put", "/data.txt", data};
+ ZkCLI.main(args);
+ assertArrayEquals(zkClient.getData("/data.txt", null, null, true), data.getBytes(StandardCharsets.UTF_8));
}
@Test
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsWriteToMultipleCollectionsTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsWriteToMultipleCollectionsTest.java?rev=1649347&r1=1649346&r2=1649347&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsWriteToMultipleCollectionsTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsWriteToMultipleCollectionsTest.java Sun Jan 4 14:53:12 2015
@@ -17,11 +17,8 @@
package org.apache.solr.cloud.hdfs;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
+import com.carrotsearch.randomizedtesting.annotations.ThreadLeakScope;
+import com.carrotsearch.randomizedtesting.annotations.ThreadLeakScope.Scope;
import org.apache.hadoop.hdfs.MiniDFSCluster;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.store.NRTCachingDirectory;
@@ -29,7 +26,7 @@ import org.apache.lucene.util.LuceneTest
import org.apache.lucene.util.LuceneTestCase.Slow;
import org.apache.solr.client.solrj.SolrQuery;
import org.apache.solr.client.solrj.embedded.JettySolrRunner;
-import org.apache.solr.client.solrj.impl.CloudSolrServer;
+import org.apache.solr.client.solrj.impl.CloudSolrClient;
import org.apache.solr.cloud.BasicDistributedZkTest;
import org.apache.solr.cloud.StopableIndexingThread;
import org.apache.solr.core.CoreContainer;
@@ -44,8 +41,10 @@ import org.apache.solr.util.RefCounted;
import org.junit.AfterClass;
import org.junit.BeforeClass;
-import com.carrotsearch.randomizedtesting.annotations.ThreadLeakScope;
-import com.carrotsearch.randomizedtesting.annotations.ThreadLeakScope.Scope;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
@Slow
@Nightly
@@ -95,13 +94,13 @@ public class HdfsWriteToMultipleCollecti
for (int i = 0; i < cnt; i++) {
waitForRecoveriesToFinish(ACOLLECTION + i, false);
}
- List<CloudSolrServer> cloudServers = new ArrayList<>();
+ List<CloudSolrClient> cloudClients = new ArrayList<>();
List<StopableIndexingThread> threads = new ArrayList<>();
for (int i = 0; i < cnt; i++) {
- CloudSolrServer server = new CloudSolrServer(zkServer.getZkAddress());
- server.setDefaultCollection(ACOLLECTION + i);
- cloudServers.add(server);
- StopableIndexingThread indexThread = new StopableIndexingThread(null, server, "1", true, docCount);
+ CloudSolrClient client = new CloudSolrClient(zkServer.getZkAddress());
+ client.setDefaultCollection(ACOLLECTION + i);
+ cloudClients.add(client);
+ StopableIndexingThread indexThread = new StopableIndexingThread(null, client, "1", true, docCount);
threads.add(indexThread);
indexThread.start();
}
@@ -113,13 +112,13 @@ public class HdfsWriteToMultipleCollecti
}
long collectionsCount = 0;
- for (CloudSolrServer server : cloudServers) {
- server.commit();
- collectionsCount += server.query(new SolrQuery("*:*")).getResults().getNumFound();
+ for (CloudSolrClient client : cloudClients) {
+ client.commit();
+ collectionsCount += client.query(new SolrQuery("*:*")).getResults().getNumFound();
}
- for (CloudSolrServer server : cloudServers) {
- server.shutdown();
+ for (CloudSolrClient client : cloudClients) {
+ client.shutdown();
}
assertEquals(addCnt, collectionsCount);
@@ -146,7 +145,7 @@ public class HdfsWriteToMultipleCollecti
// see SOLR-6424
assertFalse(blockDirectory.isBlockCacheWriteEnabled());
Cache cache = blockDirectory.getCache();
- // we know its a BlockDirectoryCache, but future proof
+ // we know it's a BlockDirectoryCache, but future proof
assertTrue(cache instanceof BlockDirectoryCache);
BlockCache blockCache = ((BlockDirectoryCache) cache)
.getBlockCache();
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/hdfs/StressHdfsTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/hdfs/StressHdfsTest.java?rev=1649347&r1=1649346&r2=1649347&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/hdfs/StressHdfsTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/hdfs/StressHdfsTest.java Sun Jan 4 14:53:12 2015
@@ -33,9 +33,9 @@ import org.apache.hadoop.hdfs.server.nam
import org.apache.lucene.util.LuceneTestCase;
import org.apache.lucene.util.LuceneTestCase.Slow;
import org.apache.solr.client.solrj.SolrQuery;
-import org.apache.solr.client.solrj.SolrServer;
+import org.apache.solr.client.solrj.SolrClient;
import org.apache.solr.client.solrj.SolrServerException;
-import org.apache.solr.client.solrj.impl.HttpSolrServer;
+import org.apache.solr.client.solrj.impl.HttpSolrClient;
import org.apache.solr.client.solrj.request.QueryRequest;
import org.apache.solr.cloud.BasicDistributedZkTest;
import org.apache.solr.cloud.ChaosMonkey;
@@ -162,8 +162,8 @@ public class StressHdfsTest extends Basi
List<String> dataDirs = new ArrayList<>();
int i = 0;
- for (SolrServer client : clients) {
- HttpSolrServer c = new HttpSolrServer(getBaseUrl(client) + "/" + DELETE_DATA_DIR_COLLECTION);
+ for (SolrClient client : clients) {
+ HttpSolrClient c = new HttpSolrClient(getBaseUrl(client) + "/" + DELETE_DATA_DIR_COLLECTION);
try {
int docCnt = random().nextInt(1000) + 1;
for (int j = 0; j < docCnt; j++) {
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/overseer/ZkStateWriterTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/overseer/ZkStateWriterTest.java?rev=1649347&r1=1649346&r2=1649347&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/overseer/ZkStateWriterTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/cloud/overseer/ZkStateWriterTest.java Sun Jan 4 14:53:12 2015
@@ -64,7 +64,7 @@ public class ZkStateWriterTest extends S
new DocCollection("c1", new HashMap<>(), new HashMap<>(), DocRouter.DEFAULT, 0, ZkStateReader.COLLECTIONS_ZKNODE + "/c1"));
assertFalse("First requests can always be batched", writer.maybeFlushBefore(c1));
- ClusterState clusterState = writer.enqueueUpdate(reader.getClusterState(), c1);
+ ClusterState clusterState = writer.enqueueUpdate(reader.getClusterState(), c1, null);
ZkWriteCommand c2 = new ZkWriteCommand("c2",
new DocCollection("c2", new HashMap<>(), new HashMap<>(), DocRouter.DEFAULT, 0, ZkStateReader.COLLECTIONS_ZKNODE + "/c2"));
@@ -91,7 +91,7 @@ public class ZkStateWriterTest extends S
// create a collection in stateFormat = 1 i.e. inside the main cluster state
ZkWriteCommand c3 = new ZkWriteCommand("c3",
new DocCollection("c3", new HashMap<>(), new HashMap<>(), DocRouter.DEFAULT, 0, ZkStateReader.CLUSTER_STATE));
- clusterState = writer.enqueueUpdate(clusterState, c3);
+ clusterState = writer.enqueueUpdate(clusterState, c3, null);
// simulate three state changes in c3, all should be batched
for (int i=0; i<3; i++) {
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/OpenCloseCoreStressTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/OpenCloseCoreStressTest.java?rev=1649347&r1=1649346&r2=1649347&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/OpenCloseCoreStressTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/OpenCloseCoreStressTest.java Sun Jan 4 14:53:12 2015
@@ -17,23 +17,11 @@
package org.apache.solr.core;
-import java.io.File;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-import java.util.Random;
-import java.util.TreeMap;
-import java.util.concurrent.atomic.AtomicBoolean;
-import java.util.concurrent.atomic.AtomicInteger;
-import java.util.concurrent.atomic.AtomicLong;
-
import org.apache.commons.io.FileUtils;
import org.apache.solr.SolrTestCaseJ4;
-import org.apache.solr.client.solrj.SolrServer;
+import org.apache.solr.client.solrj.SolrClient;
import org.apache.solr.client.solrj.embedded.JettySolrRunner;
-import org.apache.solr.client.solrj.impl.HttpSolrServer;
+import org.apache.solr.client.solrj.impl.HttpSolrClient;
import org.apache.solr.client.solrj.request.UpdateRequest;
import org.apache.solr.client.solrj.response.QueryResponse;
import org.apache.solr.client.solrj.response.UpdateResponse;
@@ -44,6 +32,18 @@ import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Random;
+import java.util.TreeMap;
+import java.util.concurrent.atomic.AtomicBoolean;
+import java.util.concurrent.atomic.AtomicInteger;
+import java.util.concurrent.atomic.AtomicLong;
+
/**
* Incorporate the open/close stress tests into unit tests.
*/
@@ -69,8 +69,8 @@ public class OpenCloseCoreStressTest ext
File solrHomeDirectory;
- List<HttpSolrServer> indexingServers = new ArrayList<>(indexingThreads);
- List<HttpSolrServer> queryServers = new ArrayList<>(queryThreads);
+ List<HttpSolrClient> indexingClients = new ArrayList<>(indexingThreads);
+ List<HttpSolrClient> queryingClients = new ArrayList<>(queryThreads);
static String savedFactory;
@@ -93,14 +93,14 @@ public class OpenCloseCoreStressTest ext
@After
public void tearDownServer() throws Exception {
if (jetty != null) jetty.stop();
- for(SolrServer server:indexingServers) {
- server.shutdown();
+ for(SolrClient client: indexingClients) {
+ client.shutdown();
}
- for(SolrServer server:queryServers) {
- server.shutdown();
+ for(SolrClient client: queryingClients) {
+ client.shutdown();
}
- indexingServers.clear();
- queryServers.clear();
+ indexingClients.clear();
+ queryingClients.clear();
}
@Test
@@ -145,25 +145,25 @@ public class OpenCloseCoreStressTest ext
}
- private void getServers() throws Exception {
+ private void buildClients() throws Exception {
jetty.start();
url = buildUrl(jetty.getLocalPort(), "/solr/");
// Mostly to keep annoying logging messages from being sent out all the time.
for (int idx = 0; idx < indexingThreads; ++idx) {
- HttpSolrServer server = new HttpSolrServer(url);
- server.setDefaultMaxConnectionsPerHost(25);
- server.setConnectionTimeout(30000);
- server.setSoTimeout(60000);
- indexingServers.add(server);
+ HttpSolrClient client = new HttpSolrClient(url);
+ client.setDefaultMaxConnectionsPerHost(25);
+ client.setConnectionTimeout(30000);
+ client.setSoTimeout(60000);
+ indexingClients.add(client);
}
for (int idx = 0; idx < queryThreads; ++idx) {
- HttpSolrServer server = new HttpSolrServer(url);
- server.setDefaultMaxConnectionsPerHost(25);
- server.setConnectionTimeout(30000);
- server.setSoTimeout(30000);
- queryServers.add(server);
+ HttpSolrClient client = new HttpSolrClient(url);
+ client.setDefaultMaxConnectionsPerHost(25);
+ client.setConnectionTimeout(30000);
+ client.setSoTimeout(30000);
+ queryingClients.add(client);
}
}
@@ -173,7 +173,7 @@ public class OpenCloseCoreStressTest ext
makeCores(solrHomeDirectory, oldStyle);
//MUST start the server after the cores are made.
- getServers();
+ buildClients();
try {
@@ -187,9 +187,9 @@ public class OpenCloseCoreStressTest ext
log.info(String.format(Locale.ROOT, "\n\n\n\n\nStarting a %,d second cycle, seconds left: %,d. Seconds run so far: %,d.",
cycleSeconds, secondsRemaining, secondsRun));
- Indexer idxer = new Indexer(this, url, indexingServers, indexingThreads, cycleSeconds, random());
+ Indexer idxer = new Indexer(this, url, indexingClients, indexingThreads, cycleSeconds, random());
- Queries queries = new Queries(this, url, queryServers, queryThreads, random());
+ Queries queries = new Queries(this, url, queryingClients, queryThreads, random());
idxer.waitOnThreads();
@@ -197,12 +197,12 @@ public class OpenCloseCoreStressTest ext
secondsRemaining = Math.max(secondsRemaining - resetInterval, 0);
- checkResults(queryServers.get(0), queries, idxer);
+ checkResults(queryingClients.get(0), queries, idxer);
secondsRun += cycleSeconds;
if (secondsRemaining > 0) {
- deleteAllDocuments(queryServers.get(0), queries);
+ deleteAllDocuments(queryingClients.get(0), queries);
}
} while (secondsRemaining > 0);
@@ -251,14 +251,14 @@ public class OpenCloseCoreStressTest ext
}
- void deleteAllDocuments(HttpSolrServer server, Queries queries) {
+ void deleteAllDocuments(HttpSolrClient client, Queries queries) {
log.info("Deleting data from last cycle, this may take a few minutes.");
for (String core : coreNames) {
try {
- server.setBaseURL(url + core);
- server.deleteByQuery("*:*");
- server.optimize(true, true); // should be close to a no-op.
+ client.setBaseURL(url + core);
+ client.deleteByQuery("*:*");
+ client.optimize(true, true); // should be close to a no-op.
} catch (Exception e) {
e.printStackTrace();
}
@@ -269,7 +269,7 @@ public class OpenCloseCoreStressTest ext
long foundDocs = 0;
for (String core : coreNames) {
try {
- long found = queries.getCount(server, core);
+ long found = queries.getCount(client, core);
assertEquals("Cores should be empty", found, 0L);
foundDocs += found;
} catch (Exception e) {
@@ -287,21 +287,21 @@ public class OpenCloseCoreStressTest ext
}
}
- private void checkResults(HttpSolrServer server, Queries queries, Indexer idxer) throws InterruptedException {
+ private void checkResults(HttpSolrClient client, Queries queries, Indexer idxer) throws InterruptedException {
log.info("Checking if indexes have all the documents they should...");
long totalDocsFound = 0;
for (Map.Entry<String, Long> ent : coreCounts.entrySet()) {
- server.setBaseURL(url + ent.getKey());
+ client.setBaseURL(url + ent.getKey());
for (int idx = 0; idx < 3; ++idx) {
try {
- server.commit(true, true);
+ client.commit(true, true);
break; // retry loop
} catch (Exception e) {
log.warn("Exception when committing core " + ent.getKey() + " " + e.getMessage());
Thread.sleep(100L);
}
}
- long numFound = queries.getCount(server, ent.getKey());
+ long numFound = queries.getCount(client, ent.getKey());
totalDocsFound += numFound;
assertEquals(String.format(Locale.ROOT, "Core %s bad!", ent.getKey()), (long) ent.getValue(), numFound);
}
@@ -341,14 +341,14 @@ class Indexer {
ArrayList<OneIndexer> _threads = new ArrayList<>();
- public Indexer(OpenCloseCoreStressTest OCCST, String url, List<HttpSolrServer> servers, int numThreads, int secondsToRun, Random random) {
+ public Indexer(OpenCloseCoreStressTest OCCST, String url, List<HttpSolrClient> clients, int numThreads, int secondsToRun, Random random) {
stopTime = System.currentTimeMillis() + (secondsToRun * 1000);
nextTime = System.currentTimeMillis() + 60000;
docsThisCycle.set(0);
qTimesAccum.set(0);
updateCounts.set(0);
for (int idx = 0; idx < numThreads; ++idx) {
- OneIndexer one = new OneIndexer(OCCST, url, servers.get(idx), random.nextLong());
+ OneIndexer one = new OneIndexer(OCCST, url, clients.get(idx), random.nextLong());
_threads.add(one);
one.start();
}
@@ -385,13 +385,13 @@ class Indexer {
class OneIndexer extends Thread {
private final OpenCloseCoreStressTest OCCST;
- private final HttpSolrServer server;
+ private final HttpSolrClient client;
private final String baseUrl;
private final Random random;
- OneIndexer(OpenCloseCoreStressTest OCCST, String url, HttpSolrServer server, long seed) {
+ OneIndexer(OpenCloseCoreStressTest OCCST, String url, HttpSolrClient client, long seed) {
this.OCCST = OCCST;
- this.server = server;
+ this.client = client;
this.baseUrl = url;
this.random = new Random(seed);
}
@@ -414,8 +414,8 @@ class OneIndexer extends Thread {
update.add(doc);
try {
- server.setBaseURL(baseUrl + core);
- UpdateResponse response = server.add(doc, OpenCloseCoreStressTest.COMMIT_WITHIN);
+ client.setBaseURL(baseUrl + core);
+ UpdateResponse response = client.add(doc, OpenCloseCoreStressTest.COMMIT_WITHIN);
if (response.getStatus() != 0) {
SolrTestCaseJ4.log.warn("Failed to index a document to core " + core + " with status " + response.getStatus());
} else {
@@ -451,10 +451,10 @@ class Queries {
static AtomicInteger _errors = new AtomicInteger(0);
String baseUrl;
- public Queries(OpenCloseCoreStressTest OCCST, String url, List<HttpSolrServer> servers, int numThreads, Random random) {
+ public Queries(OpenCloseCoreStressTest OCCST, String url, List<HttpSolrClient> clients, int numThreads, Random random) {
baseUrl = url;
for (int idx = 0; idx < numThreads; ++idx) {
- Thread one = new OneQuery(OCCST, url, servers.get(idx), random.nextLong());
+ Thread one = new OneQuery(OCCST, url, clients.get(idx), random.nextLong());
_threads.add(one);
one.start();
}
@@ -472,14 +472,14 @@ class Queries {
}
}
- public long getCount(HttpSolrServer server, String core) {
+ public long getCount(HttpSolrClient client, String core) {
ModifiableSolrParams params = new ModifiableSolrParams();
params.set("qt", "/select");
params.set("q", "*:*");
long numFound = 0;
- server.setBaseURL(baseUrl + core);
+ client.setBaseURL(baseUrl + core);
try {
- QueryResponse response = server.query(params);
+ QueryResponse response = client.query(params);
numFound = response.getResults().getNumFound();
} catch (Exception e) {
e.printStackTrace();
@@ -490,13 +490,13 @@ class Queries {
class OneQuery extends Thread {
OpenCloseCoreStressTest OCCST;
- private final HttpSolrServer server;
+ private final HttpSolrClient client;
private final String baseUrl;
private final Random random;
- OneQuery(OpenCloseCoreStressTest OCCST, String url, HttpSolrServer server, long seed) {
+ OneQuery(OpenCloseCoreStressTest OCCST, String url, HttpSolrClient client, long seed) {
this.OCCST = OCCST;
- this.server = server;
+ this.client = client;
this.baseUrl = url;
this.random = new Random(seed);
}
@@ -514,8 +514,8 @@ class OneQuery extends Thread {
try {
// sleep between 250ms and 10000 ms
Thread.sleep(100L); // Let's not go crazy here.
- server.setBaseURL(baseUrl + core);
- QueryResponse response = server.query(params);
+ client.setBaseURL(baseUrl + core);
+ QueryResponse response = client.query(params);
if (response.getStatus() != 0) {
SolrTestCaseJ4.log.warn("Failed to query core " + core + " with status " + response.getStatus());
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/SOLR749Test.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/SOLR749Test.java?rev=1649347&r1=1649346&r2=1649347&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/SOLR749Test.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/SOLR749Test.java Sun Jan 4 14:53:12 2015
@@ -79,7 +79,7 @@ public class SOLR749Test extends SolrTes
"//result[@numFound=19]");
// don't assume specific clause evaluation ordering.
- // ideally this is 19, but could be as high as 20 depending on wether frange's
+ // ideally this is 19, but could be as high as 20 depending on whether frange's
// scorer has next() called on it before other clauses skipTo
int count = CountUsageValueSourceParser.getAndClearCount("frange_in_bq");
assertTrue("frange_in_bq: " + count, (19 <= count && count <= 20));
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/SolrCoreCheckLockOnStartupTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/SolrCoreCheckLockOnStartupTest.java?rev=1649347&r1=1649346&r2=1649347&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/SolrCoreCheckLockOnStartupTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/SolrCoreCheckLockOnStartupTest.java Sun Jan 4 14:53:12 2015
@@ -41,7 +41,7 @@ public class SolrCoreCheckLockOnStartupT
System.setProperty("solr.directoryFactory", "org.apache.solr.core.SimpleFSDirectoryFactory");
// test tests native and simple in the same jvm in the same exact directory:
// the file will remain after the native test (it cannot safely be deleted without the risk of deleting another guys lock)
- // its ok, these aren't "compatible" anyway: really this test should not re-use the same directory at all.
+ // it's ok, these aren't "compatible" anyway: really this test should not re-use the same directory at all.
Files.deleteIfExists(new File(new File(initCoreDataDir, "index"), IndexWriter.WRITE_LOCK_NAME).toPath());
}
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/TestCoreDiscovery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/TestCoreDiscovery.java?rev=1649347&r1=1649346&r2=1649347&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/TestCoreDiscovery.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/TestCoreDiscovery.java Sun Jan 4 14:53:12 2015
@@ -17,13 +17,6 @@ package org.apache.solr.core;
* limitations under the License.
*/
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.OutputStreamWriter;
-import java.io.Writer;
-import java.nio.file.Files;
-import java.util.Properties;
-
import org.apache.commons.io.FileUtils;
import org.apache.lucene.util.IOUtils;
import org.apache.solr.SolrTestCaseJ4;
@@ -32,7 +25,17 @@ import org.junit.After;
import org.junit.BeforeClass;
import org.junit.Test;
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.OutputStreamWriter;
+import java.io.Writer;
import java.nio.charset.StandardCharsets;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.util.Properties;
+
+import static org.hamcrest.CoreMatchers.not;
+import static org.junit.internal.matchers.StringContains.containsString;
public class TestCoreDiscovery extends SolrTestCaseJ4 {
@@ -211,6 +214,38 @@ public class TestCoreDiscovery extends S
cc.shutdown();
}
}
+
+ @Test
+ public void testAlternateRelativeCoreDir() throws Exception {
+
+ String relative = "relativeCoreDir";
+
+ setMeUp(relative);
+ // two cores under the relative directory
+ addCoreWithProps(makeCorePropFile("core1", false, true, "dataDir=core1"),
+ solrHomeDirectory.toPath().resolve(relative).resolve("core1").resolve(CorePropertiesLocator.PROPERTIES_FILENAME).toFile());
+ addCoreWithProps(makeCorePropFile("core2", false, false, "dataDir=core2"),
+ solrHomeDirectory.toPath().resolve(relative).resolve("core2").resolve(CorePropertiesLocator.PROPERTIES_FILENAME).toFile());
+ // one core *not* under the relative directory
+ addCoreWithProps(makeCorePropFile("core0", false, true, "datadir=core0"),
+ solrHomeDirectory.toPath().resolve("core0").resolve(CorePropertiesLocator.PROPERTIES_FILENAME).toFile());
+
+ CoreContainer cc = init();
+ try (SolrCore core1 = cc.getCore("core1");
+ SolrCore core2 = cc.getCore("core2")) {
+ assertNotNull(core1);
+ assertNotNull(core2);
+
+ assertNull(cc.getCore("core0"));
+
+ SolrCore core3 = cc.create(new CoreDescriptor(cc, "core3", "core3", "configSet", "minimal"));
+ assertThat(core3.getCoreDescriptor().getInstanceDir(), containsString("relative"));
+
+ } finally {
+ cc.shutdown();
+ }
+ }
+
@Test
public void testNoCoreDir() throws Exception {
File noCoreDir = createTempDir().toFile();
@@ -344,9 +379,11 @@ public class TestCoreDiscovery extends S
homeDir.setReadable(true, false);
}
+
// For testing whether finding a solr.xml overrides looking at solr.properties
private final static String SOLR_XML = "<solr> " +
"<int name=\"transientCacheSize\">2</int> " +
+ "<str name=\"configSetBaseDir\">" + Paths.get(TEST_HOME()).resolve("configsets").toString() + "</str>" +
"<solrcloud> " +
"<str name=\"hostContext\">solrprop</str> " +
"<int name=\"zkClientTimeout\">20</int> " +
@@ -354,4 +391,16 @@ public class TestCoreDiscovery extends S
"<int name=\"hostPort\">6000</int> " +
"</solrcloud> " +
"</solr>";
+
+ @Test
+ public void testRootDirectoryResolution() {
+
+ SolrResourceLoader loader = new SolrResourceLoader(solrHomeDirectory.getAbsolutePath());
+
+ ConfigSolr config = ConfigSolr.fromString(loader, "<solr><str name=\"coreRootDirectory\">relative</str></solr>");
+ assertThat(config.getCoreRootDirectory(), containsString(solrHomeDirectory.getAbsolutePath()));
+
+ ConfigSolr absConfig = ConfigSolr.fromString(loader, "<solr><str name=\"coreRootDirectory\">/absolute</str></solr>");
+ assertThat(absConfig.getCoreRootDirectory(), not(containsString(solrHomeDirectory.getAbsolutePath())));
+ }
}
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/TestInitParams.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/TestInitParams.java?rev=1649347&r1=1649346&r2=1649347&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/TestInitParams.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/TestInitParams.java Sun Jan 4 14:53:12 2015
@@ -76,7 +76,7 @@ public class TestInitParams extends Solr
}
- @Test
+ /*@Test
public void testComponentWithInitParamAndRequestParam(){
for (String s : Arrays.asList("/dump4")) {
SolrRequestHandler handler = h.getCore().getRequestHandler(s);
@@ -87,7 +87,7 @@ public class TestInitParams extends Solr
assertEquals("B", def.get("b"));
assertEquals("C", def.get("c"));
}
- }
+ }*/
@Test
public void testComponentWithConflictingInitParams(){
SolrRequestHandler handler = h.getCore().getRequestHandler("/dump2");
@@ -109,6 +109,16 @@ public class TestInitParams extends Solr
assertNull(h.getCore().getRequestHandler("/greedypath/unknownpath"));
}
+ public void testElevateExample(){
+ SolrRequestHandler handler = h.getCore().getRequestHandler("/elevate");
+ SolrQueryResponse rsp = new SolrQueryResponse();
+ handler.handleRequest(req("initArgs", "true"), rsp);
+ NamedList nl = (NamedList) rsp.getValues().get("initArgs");
+ NamedList def = (NamedList) nl.get(PluginInfo.DEFAULTS);
+ assertEquals("text" ,def.get("df"));
+
+ }
+
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/TestSolrConfigHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/TestSolrConfigHandler.java?rev=1649347&r1=1649346&r2=1649347&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/TestSolrConfigHandler.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/TestSolrConfigHandler.java Sun Jan 4 14:53:12 2015
@@ -22,21 +22,21 @@ import java.io.File;
import java.io.IOException;
import java.io.StringReader;
import java.nio.charset.StandardCharsets;
+import java.text.MessageFormat;
import java.util.Arrays;
import java.util.Collections;
+import java.util.List;
import java.util.Map;
+import java.util.Objects;
import java.util.SortedMap;
import java.util.TreeMap;
import java.util.concurrent.TimeUnit;
import com.google.common.collect.ImmutableList;
import org.apache.commons.io.FileUtils;
-import org.apache.http.HttpEntity;
-import org.apache.http.client.methods.HttpGet;
-import org.apache.http.util.EntityUtils;
import org.apache.solr.SolrTestCaseJ4;
-import org.apache.solr.client.solrj.impl.CloudSolrServer;
-import org.apache.solr.client.solrj.impl.HttpSolrServer;
+import org.apache.solr.client.solrj.impl.CloudSolrClient;
+import org.apache.solr.common.cloud.ZkStateReader;
import org.apache.solr.handler.TestSolrConfigHandlerConcurrent;
import org.apache.solr.util.RestTestBase;
import org.apache.solr.util.RestTestHarness;
@@ -46,10 +46,14 @@ import org.junit.Before;
import org.noggit.JSONParser;
import org.noggit.ObjectBuilder;
import org.restlet.ext.servlet.ServerServlet;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import static org.apache.solr.core.ConfigOverlay.getObjectByPath;
public class TestSolrConfigHandler extends RestTestBase {
+ public static final Logger log = LoggerFactory.getLogger(TestSolrConfigHandler.class);
+
private static File tmpSolrHome;
private static File tmpConfDir;
@@ -81,7 +85,7 @@ public class TestSolrConfigHandler exten
jetty.stop();
jetty = null;
}
- server = null;
+ client = null;
restTestHarness = null;
}
@@ -142,66 +146,47 @@ public class TestSolrConfigHandler exten
reqhandlertests(restTestHarness, null,null);
}
- private static void runConfigCommand(RestTestHarness harness, String uri, String payload) throws IOException {
+ public static void runConfigCommand(RestTestHarness harness, String uri, String payload) throws IOException {
String response = harness.post(uri, SolrTestCaseJ4.json(payload));
Map map = (Map) ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
assertNull(response, map.get("errors"));
}
- public static void reqhandlertests(RestTestHarness writeHarness,String testServerBaseUrl, CloudSolrServer cloudSolrServer) throws Exception {
+ public static void reqhandlertests(RestTestHarness writeHarness,String testServerBaseUrl, CloudSolrClient cloudSolrServer) throws Exception {
String payload = "{\n" +
"'create-requesthandler' : { 'name' : '/x', 'class': 'org.apache.solr.handler.DumpRequestHandler' , 'startup' : 'lazy'}\n" +
"}";
runConfigCommand(writeHarness,"/config?wt=json", payload);
- boolean success = false;
- long startTime = System.nanoTime();
- long maxTimeoutSeconds = 10;
- while ( TimeUnit.SECONDS.convert(System.nanoTime() - startTime, TimeUnit.NANOSECONDS) < maxTimeoutSeconds) {
- String uri = "/config/overlay?wt=json";
- Map m = testServerBaseUrl ==null? getRespMap(uri,writeHarness) : TestSolrConfigHandlerConcurrent.getAsMap(testServerBaseUrl+uri ,cloudSolrServer) ;
- if("lazy".equals( ConfigOverlay.getObjectByPath(m, true, Arrays.asList("overlay", "requestHandler", "/x","startup")))) {
- Map map = getRespMap("/x?wt=json",writeHarness);
- if(map.containsKey("params")) {
- success = true;
- break;
- }
- }
- Thread.sleep(100);
-
- }
-
- assertTrue( "Could not register requestHandler ", success);
+ testForResponseElement(writeHarness,
+ testServerBaseUrl,
+ "/config/overlay?wt=json",
+ cloudSolrServer,
+ Arrays.asList("overlay", "requestHandler", "/x", "startup"),
+ "lazy",
+ 10);
payload = "{\n" +
"'update-requesthandler' : { 'name' : '/x', 'class': 'org.apache.solr.handler.DumpRequestHandler' , 'startup' : 'lazy' , 'a':'b'}\n" +
"}";
runConfigCommand(writeHarness,"/config?wt=json", payload);
- success = false;
- startTime = System.nanoTime();
- maxTimeoutSeconds = 10;
- while ( TimeUnit.SECONDS.convert(System.nanoTime() - startTime, TimeUnit.NANOSECONDS) < maxTimeoutSeconds) {
- String uri = "/config/overlay?wt=json";
- Map m = testServerBaseUrl ==null? getRespMap(uri,writeHarness) : TestSolrConfigHandlerConcurrent.getAsMap(testServerBaseUrl+uri ,cloudSolrServer) ;
- if("b".equals( ConfigOverlay.getObjectByPath(m, true, Arrays.asList("overlay", "requestHandler", "/x","a")))) {
- success = true;
- break;
- }
- Thread.sleep(100);
-
- }
-
- assertTrue( "Could not update requestHandler ", success);
+ testForResponseElement(writeHarness,
+ testServerBaseUrl,
+ "/config/overlay?wt=json",
+ cloudSolrServer,
+ Arrays.asList("overlay", "requestHandler", "/x", "a"),
+ "b",
+ 10);
payload = "{\n" +
"'delete-requesthandler' : '/x'" +
"}";
runConfigCommand(writeHarness,"/config?wt=json", payload);
- success = false;
- startTime = System.nanoTime();
- maxTimeoutSeconds = 10;
+ boolean success = false;
+ long startTime = System.nanoTime();
+ int maxTimeoutSeconds = 10;
while ( TimeUnit.SECONDS.convert(System.nanoTime() - startTime, TimeUnit.NANOSECONDS) < maxTimeoutSeconds) {
String uri = "/config/overlay?wt=json";
Map m = testServerBaseUrl ==null? getRespMap(uri,writeHarness) : TestSolrConfigHandlerConcurrent.getAsMap(testServerBaseUrl+uri ,cloudSolrServer) ;
@@ -216,12 +201,43 @@ public class TestSolrConfigHandler exten
}
+ public static void testForResponseElement(RestTestHarness harness,
+ String testServerBaseUrl,
+ String uri,
+ CloudSolrClient cloudSolrServer,List<String> jsonPath,
+ String expected,
+ long maxTimeoutSeconds ) throws Exception {
+
+ boolean success = false;
+ long startTime = System.nanoTime();
+ Map m = null;
+
+ while ( TimeUnit.SECONDS.convert(System.nanoTime() - startTime, TimeUnit.NANOSECONDS) < maxTimeoutSeconds) {
+ try {
+ m = testServerBaseUrl ==null? getRespMap(uri,harness) : TestSolrConfigHandlerConcurrent.getAsMap(testServerBaseUrl + uri, cloudSolrServer) ;
+ } catch (Exception e) {
+ Thread.sleep(100);
+ continue;
+
+ }
+ if(Objects.equals(expected,ConfigOverlay.getObjectByPath(m, false, jsonPath))) {
+ success = true;
+ break;
+ }
+ Thread.sleep(100);
+
+ }
+
+ assertTrue(MessageFormat.format("Could not get expected value {0} for path {1} full output {2}", expected, jsonPath, new String(ZkStateReader.toJSON(m), StandardCharsets.UTF_8)), success);
+ }
+
public static Map getRespMap(String path, RestTestHarness restHarness) throws Exception {
String response = restHarness.query(path);
try {
return (Map) ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
} catch (JSONParser.ParseException e) {
+ log.error(response);
return Collections.emptyMap();
}
}
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/TestSolrXml.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/TestSolrXml.java?rev=1649347&r1=1649346&r2=1649347&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/TestSolrXml.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/core/TestSolrXml.java Sun Jan 4 14:53:12 2015
@@ -17,13 +17,7 @@ package org.apache.solr.core;
* limitations under the License.
*/
-import java.io.File;
-import java.io.IOException;
-import java.util.Random;
-import java.util.Locale;
-
import com.carrotsearch.randomizedtesting.rules.SystemPropertiesRestoreRule;
-import com.google.common.base.Charsets;
import org.apache.commons.io.FileUtils;
import org.apache.lucene.util.TestUtil;
import org.apache.solr.SolrTestCaseJ4;
@@ -35,6 +29,12 @@ import org.junit.rules.ExpectedException
import org.junit.rules.RuleChain;
import org.junit.rules.TestRule;
+import java.io.File;
+import java.io.IOException;
+import java.util.Locale;
+
+import static org.junit.internal.matchers.StringContains.containsString;
+
public class TestSolrXml extends SolrTestCaseJ4 {
@Rule
@@ -69,14 +69,14 @@ public class TestSolrXml extends SolrTes
assertEquals("collection handler class", "testCollectionsHandler", cfg.getCollectionsHandlerClass());
assertEquals("info handler class", "testInfoHandler", cfg.getInfoHandlerClass());
assertEquals("core load threads", 11, cfg.getCoreLoadThreadCount());
- assertEquals("core root dir", "testCoreRootDirectory" + File.separator, cfg.getCoreRootDirectory());
+ assertThat("core root dir", cfg.getCoreRootDirectory(), containsString("testCoreRootDirectory"));
assertEquals("distrib conn timeout", 22, cfg.getDistributedConnectionTimeout());
assertEquals("distrib socket timeout", 33, cfg.getDistributedSocketTimeout());
assertEquals("max update conn", 3, cfg.getMaxUpdateConnections());
assertEquals("max update conn/host", 37, cfg.getMaxUpdateConnectionsPerHost());
assertEquals("host", "testHost", cfg.getHost());
assertEquals("zk host context", "testHostContext", cfg.getZkHostContext());
- assertEquals("zk host port", "44", cfg.getZkHostPort());
+ assertEquals("solr host port", "44", cfg.getSolrHostPort());
assertEquals("leader vote wait", 55, cfg.getLeaderVoteWait());
assertEquals("logging class", "testLoggingClass", cfg.getLogWatcherConfig().getLoggingClass());
assertEquals("log watcher", true, cfg.getLogWatcherConfig().isEnabled());
@@ -105,8 +105,8 @@ public class TestSolrXml extends SolrTes
FileUtils.copyFile(new File(testSrcRoot, "solr-50-all.xml"), new File(solrHome, "solr.xml"));
ConfigSolr cfg = ConfigSolr.fromSolrHome(loader, solrHome.getAbsolutePath());
- assertEquals("core root dir", "myCoreRoot" + File.separator, cfg.getCoreRootDirectory());
- assertEquals("zk host port", "8888", cfg.getZkHostPort());
+ assertThat(cfg.getCoreRootDirectory(), containsString("myCoreRoot"));
+ assertEquals("solr host port", "8888", cfg.getSolrHostPort());
assertEquals("schema cache", false, cfg.hasSchemaCache());
}
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/JsonLoaderTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/JsonLoaderTest.java?rev=1649347&r1=1649346&r2=1649347&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/JsonLoaderTest.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/JsonLoaderTest.java Sun Jan 4 14:53:12 2015
@@ -277,7 +277,7 @@ public class JsonLoaderTest extends Solr
" \"f1\": \"v2\",\n" +
" \"f2\": null\n" +
" }\n";
- SolrQueryRequest req = req("srcField","_src");
+ SolrQueryRequest req = req("srcField","_src_");
req.getContext().put("path","/update/json/docs");
SolrQueryResponse rsp = new SolrQueryResponse();
BufferingRequestProcessor p = new BufferingRequestProcessor(null);
@@ -304,7 +304,7 @@ public class JsonLoaderTest extends Solr
" \"f2\": \"v2\",\n" +
" \"f3\": null\n" +
" }\n";
- req = req("srcField","_src");
+ req = req("srcField","_src_");
req.getContext().put("path","/update/json/docs");
rsp = new SolrQueryResponse();
p = new BufferingRequestProcessor(null);
@@ -313,7 +313,7 @@ public class JsonLoaderTest extends Solr
assertEquals( 2, p.addCommands.size() );
- String content = (String) p.addCommands.get(0).solrDoc.getFieldValue("_src");
+ String content = (String) p.addCommands.get(0).solrDoc.getFieldValue("_src_");
assertNotNull(content);
Map obj = (Map) ObjectBuilder.fromJSON(content);
assertEquals(Boolean.TRUE, obj.get("bool"));
@@ -322,7 +322,7 @@ public class JsonLoaderTest extends Solr
assertNotNull(obj.get("array"));
assertNotNull(obj.get("boosted"));
- content = (String) p.addCommands.get(1).solrDoc.getFieldValue("_src");
+ content = (String) p.addCommands.get(1).solrDoc.getFieldValue("_src_");
assertNotNull(content);
obj = (Map) ObjectBuilder.fromJSON(content);
assertEquals("v1", obj.get("f1"));
@@ -330,7 +330,7 @@ public class JsonLoaderTest extends Solr
assertTrue(obj.containsKey("f3"));
doc = "[{'id':'1'},{'id':'2'}]".replace('\'', '"');
- req = req("srcField","_src");
+ req = req("srcField","_src_");
req.getContext().put("path","/update/json/docs");
rsp = new SolrQueryResponse();
p = new BufferingRequestProcessor(null);
@@ -338,11 +338,11 @@ public class JsonLoaderTest extends Solr
loader.load(req, rsp, new ContentStreamBase.StringStream(doc), p);
assertEquals( 2, p.addCommands.size() );
- content = (String) p.addCommands.get(0).solrDoc.getFieldValue("_src");
+ content = (String) p.addCommands.get(0).solrDoc.getFieldValue("_src_");
assertNotNull(content);
obj = (Map) ObjectBuilder.fromJSON(content);
assertEquals("1", obj.get("id"));
- content = (String) p.addCommands.get(1).solrDoc.getFieldValue("_src");
+ content = (String) p.addCommands.get(1).solrDoc.getFieldValue("_src_");
assertNotNull(content);
obj = (Map) ObjectBuilder.fromJSON(content);
assertEquals("2", obj.get("id"));
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/TestConfigReload.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/TestConfigReload.java?rev=1649347&r1=1649346&r2=1649347&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/TestConfigReload.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/TestConfigReload.java Sun Jan 4 14:53:12 2015
@@ -29,8 +29,8 @@ import java.util.concurrent.TimeUnit;
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.util.EntityUtils;
-import org.apache.solr.client.solrj.SolrServer;
-import org.apache.solr.client.solrj.impl.HttpSolrServer;
+import org.apache.solr.client.solrj.SolrClient;
+import org.apache.solr.client.solrj.impl.HttpSolrClient;
import org.apache.solr.cloud.AbstractFullDistribZkTestBase;
import org.apache.solr.cloud.ZkController;
import org.apache.solr.common.cloud.DocCollection;
@@ -59,11 +59,11 @@ public class TestConfigReload extends Ab
private List<RestTestHarness> restTestHarnesses = new ArrayList<>();
private void setupHarnesses() {
- for (final SolrServer client : clients) {
+ for (final SolrClient client : clients) {
RestTestHarness harness = new RestTestHarness(new RESTfulServerProvider() {
@Override
public String getBaseURL() {
- return ((HttpSolrServer)client).getBaseURL();
+ return ((HttpSolrClient)client).getBaseURL();
}
});
restTestHarnesses.add(harness);
@@ -128,7 +128,7 @@ public class TestConfigReload extends Ab
HttpGet get = new HttpGet(uri) ;
HttpEntity entity = null;
try {
- entity = cloudClient.getLbServer().getHttpClient().execute(get).getEntity();
+ entity = cloudClient.getLbClient().getHttpClient().execute(get).getEntity();
String response = EntityUtils.toString(entity, StandardCharsets.UTF_8);
return (Map) ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
} finally {
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java?rev=1649347&r1=1649346&r2=1649347&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java Sun Jan 4 14:53:12 2015
@@ -16,26 +16,6 @@
*/
package org.apache.solr.handler;
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.OutputStreamWriter;
-import java.io.Writer;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.nio.charset.StandardCharsets;
-import java.nio.file.Paths;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Date;
-import java.util.Set;
-import java.util.concurrent.TimeUnit;
-
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.FSDirectory;
import org.apache.lucene.util.IOUtils;
@@ -44,10 +24,10 @@ import org.apache.lucene.util.TestUtil;
import org.apache.solr.BaseDistributedSearchTestCase;
import org.apache.solr.SolrTestCaseJ4;
import org.apache.solr.SolrTestCaseJ4.SuppressSSL;
-import org.apache.solr.client.solrj.SolrServer;
+import org.apache.solr.client.solrj.SolrClient;
import org.apache.solr.client.solrj.SolrServerException;
import org.apache.solr.client.solrj.embedded.JettySolrRunner;
-import org.apache.solr.client.solrj.impl.HttpSolrServer;
+import org.apache.solr.client.solrj.impl.HttpSolrClient;
import org.apache.solr.client.solrj.request.QueryRequest;
import org.apache.solr.client.solrj.request.UpdateRequest;
import org.apache.solr.client.solrj.response.QueryResponse;
@@ -71,6 +51,26 @@ import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.OutputStreamWriter;
+import java.io.Writer;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.nio.charset.StandardCharsets;
+import java.nio.file.Paths;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Date;
+import java.util.Set;
+import java.util.concurrent.TimeUnit;
+
/**
* Test for ReplicationHandler
*
@@ -87,7 +87,7 @@ public class TestReplicationHandler exte
+ File.separator;
JettySolrRunner masterJetty, slaveJetty, repeaterJetty;
- SolrServer masterClient, slaveClient, repeaterClient;
+ SolrClient masterClient, slaveClient, repeaterClient;
SolrInstance master = null, slave = null, repeater = null;
static String context = "/solr";
@@ -110,12 +110,12 @@ public class TestReplicationHandler exte
master = new SolrInstance(createTempDir("solr-instance").toFile(), "master", null);
master.setUp();
masterJetty = createJetty(master);
- masterClient = createNewSolrServer(masterJetty.getLocalPort());
+ masterClient = createNewSolrClient(masterJetty.getLocalPort());
slave = new SolrInstance(createTempDir("solr-instance").toFile(), "slave", masterJetty.getLocalPort());
slave.setUp();
slaveJetty = createJetty(slave);
- slaveClient = createNewSolrServer(slaveJetty.getLocalPort());
+ slaveClient = createNewSolrClient(slaveJetty.getLocalPort());
}
public void clearIndexWithReplication() throws Exception {
@@ -150,22 +150,22 @@ public class TestReplicationHandler exte
return jetty;
}
- private static SolrServer createNewSolrServer(int port) {
+ private static SolrClient createNewSolrClient(int port) {
try {
- // setup the server...
- HttpSolrServer s = new HttpSolrServer(buildUrl(port));
- s.setConnectionTimeout(15000);
- s.setSoTimeout(60000);
- s.setDefaultMaxConnectionsPerHost(100);
- s.setMaxTotalConnections(100);
- return s;
+ // setup the client...
+ HttpSolrClient client = new HttpSolrClient(buildUrl(port));
+ client.setConnectionTimeout(15000);
+ client.setSoTimeout(60000);
+ client.setDefaultMaxConnectionsPerHost(100);
+ client.setMaxTotalConnections(100);
+ return client;
}
catch (Exception ex) {
throw new RuntimeException(ex);
}
}
- int index(SolrServer s, Object... fields) throws Exception {
+ int index(SolrClient s, Object... fields) throws Exception {
SolrInputDocument doc = new SolrInputDocument();
for (int i = 0; i < fields.length; i += 2) {
doc.addField((String) (fields[i]), fields[i + 1]);
@@ -173,7 +173,7 @@ public class TestReplicationHandler exte
return s.add(doc).getStatus();
}
- NamedList query(String query, SolrServer s) throws SolrServerException {
+ NamedList query(String query, SolrClient s) throws SolrServerException {
NamedList res = new SimpleOrderedMap();
ModifiableSolrParams params = new ModifiableSolrParams();
@@ -188,15 +188,15 @@ public class TestReplicationHandler exte
}
/** will sleep up to 30 seconds, looking for expectedDocCount */
- private NamedList rQuery(int expectedDocCount, String query, SolrServer server) throws Exception {
+ private NamedList rQuery(int expectedDocCount, String query, SolrClient client) throws Exception {
int timeSlept = 0;
- NamedList res = query(query, server);
+ NamedList res = query(query, client);
while (expectedDocCount != numFound(res)
&& timeSlept < 30000) {
log.info("Waiting for " + expectedDocCount + " docs");
timeSlept += 100;
Thread.sleep(100);
- res = query(query, server);
+ res = query(query, client);
}
log.info("Waited for {}ms and found {} docs", timeSlept, numFound(res));
return res;
@@ -206,7 +206,7 @@ public class TestReplicationHandler exte
return ((SolrDocumentList) res.get("response")).getNumFound();
}
- private NamedList<Object> getDetails(SolrServer s) throws Exception {
+ private NamedList<Object> getDetails(SolrClient s) throws Exception {
ModifiableSolrParams params = new ModifiableSolrParams();
@@ -227,7 +227,7 @@ public class TestReplicationHandler exte
return details;
}
- private NamedList<Object> getCommits(SolrServer s) throws Exception {
+ private NamedList<Object> getCommits(SolrClient s) throws Exception {
ModifiableSolrParams params = new ModifiableSolrParams();
@@ -244,7 +244,7 @@ public class TestReplicationHandler exte
return res;
}
- private NamedList<Object> getIndexVersion(SolrServer s) throws Exception {
+ private NamedList<Object> getIndexVersion(SolrClient s) throws Exception {
ModifiableSolrParams params = new ModifiableSolrParams();
params.set("command","indexversion");
@@ -260,7 +260,7 @@ public class TestReplicationHandler exte
return res;
}
- private NamedList<Object> reloadCore(SolrServer s, String core) throws Exception {
+ private NamedList<Object> reloadCore(SolrClient s, String core) throws Exception {
ModifiableSolrParams params = new ModifiableSolrParams();
params.set("action","reload");
@@ -314,12 +314,12 @@ public class TestReplicationHandler exte
SolrInstance repeater = null;
JettySolrRunner repeaterJetty = null;
- SolrServer repeaterClient = null;
+ SolrClient repeaterClient = null;
try {
repeater = new SolrInstance(createTempDir("solr-instance").toFile(), "repeater", masterJetty.getLocalPort());
repeater.setUp();
repeaterJetty = createJetty(repeater);
- repeaterClient = createNewSolrServer(repeaterJetty.getLocalPort());
+ repeaterClient = createNewSolrClient(repeaterJetty.getLocalPort());
NamedList<Object> details = getDetails(repeaterClient);
@@ -530,7 +530,7 @@ public class TestReplicationHandler exte
masterJetty = createJetty(master);
masterClient.shutdown();
- masterClient = createNewSolrServer(masterJetty.getLocalPort());
+ masterClient = createNewSolrClient(masterJetty.getLocalPort());
slave.setTestPort(masterJetty.getLocalPort());
slave.copyConfigFile(slave.getSolrConfigFile(), "solrconfig.xml");
@@ -549,7 +549,7 @@ public class TestReplicationHandler exte
slaveJetty = createJetty(slave);
slaveClient.shutdown();
- slaveClient = createNewSolrServer(slaveJetty.getLocalPort());
+ slaveClient = createNewSolrClient(slaveJetty.getLocalPort());
//add a doc with new field and commit on master to trigger snappull from slave.
index(masterClient, "id", "2000", "name", "name = " + 2000, "newname", "newname = " + 2000);
@@ -626,7 +626,7 @@ public class TestReplicationHandler exte
slaveJetty.stop();
slaveJetty = createJetty(slave);
slaveClient.shutdown();
- slaveClient = createNewSolrServer(slaveJetty.getLocalPort());
+ slaveClient = createNewSolrClient(slaveJetty.getLocalPort());
masterClient.deleteByQuery("*:*");
slaveClient.deleteByQuery("*:*");
@@ -762,14 +762,14 @@ public class TestReplicationHandler exte
slaveJetty.stop();
slaveJetty = createJetty(slave);
slaveClient.shutdown();
- slaveClient = createNewSolrServer(slaveJetty.getLocalPort());
+ slaveClient = createNewSolrClient(slaveJetty.getLocalPort());
master.copyConfigFile(CONF_DIR + "solrconfig-master3.xml",
"solrconfig.xml");
masterJetty.stop();
masterJetty = createJetty(master);
masterClient.shutdown();
- masterClient = createNewSolrServer(masterJetty.getLocalPort());
+ masterClient = createNewSolrClient(masterJetty.getLocalPort());
masterClient.deleteByQuery("*:*");
slaveClient.deleteByQuery("*:*");
@@ -884,7 +884,7 @@ public class TestReplicationHandler exte
slaveJetty.stop();
slaveJetty = createJetty(slave);
slaveClient.shutdown();
- slaveClient = createNewSolrServer(slaveJetty.getLocalPort());
+ slaveClient = createNewSolrClient(slaveJetty.getLocalPort());
try {
repeater = new SolrInstance(createTempDir("solr-instance").toFile(), "repeater", null);
@@ -895,7 +895,7 @@ public class TestReplicationHandler exte
if (repeaterClient != null) {
repeaterClient.shutdown();
}
- repeaterClient = createNewSolrServer(repeaterJetty.getLocalPort());
+ repeaterClient = createNewSolrClient(repeaterJetty.getLocalPort());
for (int i = 0; i < 3; i++)
index(masterClient, "id", i, "name", "name = " + i);
@@ -948,7 +948,7 @@ public class TestReplicationHandler exte
}
- private void assertVersions(SolrServer client1, SolrServer client2) throws Exception {
+ private void assertVersions(SolrClient client1, SolrClient client2) throws Exception {
NamedList<Object> details = getDetails(client1);
ArrayList<NamedList<Object>> commits = (ArrayList<NamedList<Object>>) details.get("commits");
Long maxVersionClient1 = getVersion(client1);
@@ -975,7 +975,7 @@ public class TestReplicationHandler exte
assertEquals(maxVersionClient2, version);
}
- private Long getVersion(SolrServer client) throws Exception {
+ private Long getVersion(SolrClient client) throws Exception {
NamedList<Object> details;
ArrayList<NamedList<Object>> commits;
details = getDetails(client);
@@ -1025,7 +1025,7 @@ public class TestReplicationHandler exte
masterJetty = createJetty(master);
masterClient.shutdown();
- masterClient = createNewSolrServer(masterJetty.getLocalPort());
+ masterClient = createNewSolrClient(masterJetty.getLocalPort());
for (int i = 0; i < nDocs; i++)
index(masterClient, "id", i, "name", "name = " + i);
@@ -1043,7 +1043,7 @@ public class TestReplicationHandler exte
//start slave
slaveJetty = createJetty(slave);
slaveClient.shutdown();
- slaveClient = createNewSolrServer(slaveJetty.getLocalPort());
+ slaveClient = createNewSolrClient(slaveJetty.getLocalPort());
//get docs from slave and check if number is equal to master
NamedList slaveQueryRsp = rQuery(nDocs, "*:*", slaveClient);
@@ -1077,7 +1077,7 @@ public class TestReplicationHandler exte
masterJetty = createJetty(master);
masterClient.shutdown();
- masterClient = createNewSolrServer(masterJetty.getLocalPort());
+ masterClient = createNewSolrClient(masterJetty.getLocalPort());
for (int i = 0; i < nDocs; i++)
index(masterClient, "id", i, "name", "name = " + i);
@@ -1090,7 +1090,7 @@ public class TestReplicationHandler exte
masterJetty.stop();
masterJetty.start(true);
- // masterClient = createNewSolrServer(masterJetty.getLocalPort());
+ // masterClient = createNewSolrClient(masterJetty.getLocalPort());
NamedList masterQueryRsp = rQuery(nDocs, "*:*", masterClient);
SolrDocumentList masterQueryResult = (SolrDocumentList) masterQueryRsp
@@ -1103,7 +1103,7 @@ public class TestReplicationHandler exte
// start slave
slaveJetty = createJetty(slave);
slaveClient.shutdown();
- slaveClient = createNewSolrServer(slaveJetty.getLocalPort());
+ slaveClient = createNewSolrClient(slaveJetty.getLocalPort());
// get docs from slave and check if number is equal to master
NamedList slaveQueryRsp = rQuery(nDocs, "*:*", slaveClient);
@@ -1137,7 +1137,7 @@ public class TestReplicationHandler exte
masterJetty = createJetty(master);
masterClient.shutdown();
- masterClient = createNewSolrServer(masterJetty.getLocalPort());
+ masterClient = createNewSolrClient(masterJetty.getLocalPort());
masterClient.deleteByQuery("*:*");
for (int i = 0; i < docs; i++)
@@ -1155,7 +1155,7 @@ public class TestReplicationHandler exte
//start slave
slaveJetty = createJetty(slave);
slaveClient.shutdown();
- slaveClient = createNewSolrServer(slaveJetty.getLocalPort());
+ slaveClient = createNewSolrClient(slaveJetty.getLocalPort());
//get docs from slave and check if number is equal to master
NamedList slaveQueryRsp = rQuery(docs, "*:*", slaveClient);
@@ -1236,7 +1236,7 @@ public class TestReplicationHandler exte
masterJetty = createJetty(master);
masterClient.shutdown();
- masterClient = createNewSolrServer(masterJetty.getLocalPort());
+ masterClient = createNewSolrClient(masterJetty.getLocalPort());
slave.setTestPort(masterJetty.getLocalPort());
slave.copyConfigFile(slave.getSolrConfigFile(), "solrconfig.xml");
@@ -1244,7 +1244,7 @@ public class TestReplicationHandler exte
slaveJetty.stop();
slaveJetty = createJetty(slave);
slaveClient.shutdown();
- slaveClient = createNewSolrServer(slaveJetty.getLocalPort());
+ slaveClient = createNewSolrClient(slaveJetty.getLocalPort());
slaveClient.deleteByQuery("*:*");
slaveClient.commit();
@@ -1297,7 +1297,7 @@ public class TestReplicationHandler exte
useFactory(null);
masterJetty = createJetty(master);
masterClient.shutdown();
- masterClient = createNewSolrServer(masterJetty.getLocalPort());
+ masterClient = createNewSolrClient(masterJetty.getLocalPort());
//index docs
final int totalDocs = TestUtil.nextInt(random(), 50, 100);
@@ -1323,14 +1323,14 @@ public class TestReplicationHandler exte
//Start again and replicate the data
useFactory(null);
masterJetty = createJetty(master);
- masterClient = createNewSolrServer(masterJetty.getLocalPort());
+ masterClient = createNewSolrClient(masterJetty.getLocalPort());
//start slave
slave.setTestPort(masterJetty.getLocalPort());
slave.copyConfigFile(CONF_DIR + "solrconfig-slave1.xml", "solrconfig.xml");
slaveJetty = createJetty(slave);
slaveClient.shutdown();
- slaveClient = createNewSolrServer(slaveJetty.getLocalPort());
+ slaveClient = createNewSolrClient(slaveJetty.getLocalPort());
long startTime = System.nanoTime();
@@ -1359,9 +1359,9 @@ public class TestReplicationHandler exte
private class AddExtraDocs implements Runnable {
- SolrServer masterClient;
+ SolrClient masterClient;
int startId;
- public AddExtraDocs(SolrServer masterClient, int startId) {
+ public AddExtraDocs(SolrClient masterClient, int startId) {
this.masterClient = masterClient;
this.startId = startId;
}
@@ -1404,7 +1404,7 @@ public class TestReplicationHandler exte
out.close();
}
- private UpdateResponse emptyUpdate(SolrServer client, String... params)
+ private UpdateResponse emptyUpdate(SolrClient client, String... params)
throws SolrServerException, IOException {
UpdateRequest req = new UpdateRequest();
@@ -1417,12 +1417,12 @@ public class TestReplicationHandler exte
* time for collection is after the specified "min". Will loop for
* at most "timeout" milliseconds before throwing an assertion failure.
*
- * @param client The SolrServer to poll
+ * @param client The SolrClient to poll
* @param timeout the max milliseconds to continue polling for
* @param min the startTime value must exceed this value before the method will return, if null this method will return the first startTime value encountered.
* @return the startTime value of collection
*/
- private Date watchCoreStartAt(SolrServer client, final long timeout,
+ private Date watchCoreStartAt(SolrClient client, final long timeout,
final Date min) throws InterruptedException, IOException, SolrServerException {
final long sleepInterval = 200;
long timeSlept = 0;
Modified: lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/TestReplicationHandlerBackup.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/TestReplicationHandlerBackup.java?rev=1649347&r1=1649346&r2=1649347&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/TestReplicationHandlerBackup.java (original)
+++ lucene/dev/branches/lucene6005/solr/core/src/test/org/apache/solr/handler/TestReplicationHandlerBackup.java Sun Jan 4 14:53:12 2015
@@ -17,15 +17,6 @@ package org.apache.solr.handler;
* limitations under the License.
*/
-import java.io.File;
-import java.io.FilenameFilter;
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URL;
-import java.nio.file.Path;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
import org.apache.commons.io.IOUtils;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.index.IndexReader;
@@ -37,21 +28,30 @@ import org.apache.lucene.store.SimpleFSD
import org.apache.lucene.util.TestUtil;
import org.apache.solr.SolrJettyTestBase;
import org.apache.solr.SolrTestCaseJ4;
-import org.apache.solr.client.solrj.SolrServer;
+import org.apache.solr.client.solrj.SolrClient;
import org.apache.solr.client.solrj.embedded.JettySolrRunner;
-import org.apache.solr.client.solrj.impl.HttpSolrServer;
+import org.apache.solr.client.solrj.impl.HttpSolrClient;
import org.apache.solr.common.SolrInputDocument;
import org.apache.solr.util.FileUtils;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
+import java.io.File;
+import java.io.FilenameFilter;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URL;
+import java.nio.file.Path;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
@SolrTestCaseJ4.SuppressSSL // Currently unknown why SSL does not work with this test
public class TestReplicationHandlerBackup extends SolrJettyTestBase {
JettySolrRunner masterJetty;
TestReplicationHandler.SolrInstance master = null;
- SolrServer masterClient;
+ SolrClient masterClient;
private static final String CONF_DIR = "solr"
+ File.separator + "collection1" + File.separator + "conf"
@@ -70,15 +70,15 @@ public class TestReplicationHandlerBacku
return jetty;
}
- private static SolrServer createNewSolrServer(int port) {
+ private static SolrClient createNewSolrClient(int port) {
try {
- // setup the server...
- HttpSolrServer s = new HttpSolrServer(buildUrl(port, context));
- s.setConnectionTimeout(15000);
- s.setSoTimeout(60000);
- s.setDefaultMaxConnectionsPerHost(100);
- s.setMaxTotalConnections(100);
- return s;
+ // setup the client...
+ HttpSolrClient client = new HttpSolrClient(buildUrl(port, context));
+ client.setConnectionTimeout(15000);
+ client.setSoTimeout(60000);
+ client.setDefaultMaxConnectionsPerHost(100);
+ client.setMaxTotalConnections(100);
+ return client;
}
catch (Exception ex) {
throw new RuntimeException(ex);
@@ -101,7 +101,7 @@ public class TestReplicationHandlerBacku
master.copyConfigFile(CONF_DIR + configFile, "solrconfig.xml");
masterJetty = createJetty(master);
- masterClient = createNewSolrServer(masterJetty.getLocalPort());
+ masterClient = createNewSolrClient(masterJetty.getLocalPort());
}
@Override