mirror of https://github.com/apache/lucene.git
SOLR-6868: Try to fix the failing test and also a part of the SolrJ collection API test refactoring
git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/trunk@1647472 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
658c73d6c3
commit
9a9c1bde04
|
@ -34,7 +34,6 @@ import java.util.List;
|
|||
import java.util.Map;
|
||||
import java.util.Map.Entry;
|
||||
import java.util.Objects;
|
||||
import java.util.Properties;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.CompletionService;
|
||||
import java.util.concurrent.ExecutorCompletionService;
|
||||
|
@ -47,7 +46,6 @@ import org.apache.lucene.util.LuceneTestCase.Slow;
|
|||
import org.apache.lucene.util.TestUtil;
|
||||
import org.apache.solr.client.solrj.SolrQuery;
|
||||
import org.apache.solr.client.solrj.SolrRequest;
|
||||
import org.apache.solr.client.solrj.SolrServer;
|
||||
import org.apache.solr.client.solrj.SolrServerException;
|
||||
import org.apache.solr.client.solrj.embedded.JettySolrRunner;
|
||||
import org.apache.solr.client.solrj.impl.CloudSolrServer;
|
||||
|
@ -72,7 +70,6 @@ import org.apache.solr.common.cloud.ZkCoreNodeProps;
|
|||
import org.apache.solr.common.cloud.ZkNodeProps;
|
||||
import org.apache.solr.common.cloud.ZkStateReader;
|
||||
import org.apache.solr.common.params.CollectionParams.CollectionAction;
|
||||
import org.apache.solr.common.params.CoreAdminParams;
|
||||
import org.apache.solr.common.params.MapSolrParams;
|
||||
import org.apache.solr.common.params.ModifiableSolrParams;
|
||||
import org.apache.solr.common.util.NamedList;
|
||||
|
@ -85,7 +82,6 @@ import org.apache.solr.core.SolrResourceLoader;
|
|||
import org.apache.solr.servlet.SolrDispatchFilter;
|
||||
import org.apache.solr.update.DirectUpdateHandler2;
|
||||
import org.apache.solr.util.DefaultSolrThreadFactory;
|
||||
import org.apache.zookeeper.data.Stat;
|
||||
import org.junit.Before;
|
||||
import org.junit.BeforeClass;
|
||||
|
||||
|
@ -199,7 +195,6 @@ public class CollectionsAPIDistributedZkTest extends AbstractFullDistribZkTestBa
|
|||
|
||||
@Override
|
||||
public void doTest() throws Exception {
|
||||
testPropertyParamsForCreate();
|
||||
testNodesUsedByCreate();
|
||||
testCollectionsAPI();
|
||||
testCollectionsAPIAddRemoveStress();
|
||||
|
@ -217,53 +212,7 @@ public class CollectionsAPIDistributedZkTest extends AbstractFullDistribZkTestBa
|
|||
}
|
||||
}
|
||||
|
||||
private void testPropertyParamsForCreate() throws Exception {
|
||||
String collectionName = "solrj_test_core_props";
|
||||
SolrServer server = createNewSolrServer("", getBaseUrl((HttpSolrServer) clients.get(0)));
|
||||
|
||||
File tmpDir = createTempDir("testPropertyParamsForCreate").toFile();
|
||||
File instanceDir = new File(tmpDir, "instanceDir-" + TestUtil.randomSimpleString(random(), 1, 5));
|
||||
File dataDir = new File(tmpDir, "dataDir-" + TestUtil.randomSimpleString(random(), 1, 5));
|
||||
File ulogDir = new File(tmpDir, "ulogDir-" + TestUtil.randomSimpleString(random(), 1, 5));
|
||||
|
||||
Properties properties = new Properties();
|
||||
properties.put(CoreAdminParams.INSTANCE_DIR, instanceDir.getAbsolutePath());
|
||||
properties.put(CoreAdminParams.DATA_DIR, dataDir.getAbsolutePath());
|
||||
properties.put(CoreAdminParams.ULOG_DIR, ulogDir.getAbsolutePath());
|
||||
|
||||
CollectionAdminRequest.Create createReq = new CollectionAdminRequest.Create();
|
||||
createReq.setCollectionName(collectionName);
|
||||
createReq.setNumShards(1);
|
||||
createReq.setConfigName("conf1");
|
||||
createReq.setProperties(properties);
|
||||
|
||||
CollectionAdminResponse response = createReq.process( server );
|
||||
assertEquals(0, response.getStatus());
|
||||
assertTrue(response.isSuccess());
|
||||
Map<String, NamedList<Integer>> coresStatus = response.getCollectionCoresStatus();
|
||||
assertEquals(1, coresStatus.size());
|
||||
|
||||
DocCollection testcoll = getCommonCloudSolrServer().getZkStateReader()
|
||||
.getClusterState().getCollection(collectionName);
|
||||
|
||||
Replica replica1 = testcoll.getReplica("core_node1");
|
||||
|
||||
HttpSolrServer replica1Server = new HttpSolrServer(replica1.getStr("base_url"));
|
||||
try {
|
||||
CoreAdminResponse status = CoreAdminRequest.getStatus(replica1.getStr("core"), replica1Server);
|
||||
NamedList<Object> coreStatus = status.getCoreStatus(replica1.getStr("core"));
|
||||
String dataDirStr = (String) coreStatus.get("dataDir");
|
||||
String instanceDirStr = (String) coreStatus.get("instanceDir");
|
||||
assertEquals("Instance dir does not match param passed in property.instanceDir syntax",
|
||||
new File(instanceDirStr).getAbsolutePath(), instanceDir.getAbsolutePath());
|
||||
assertEquals("Data dir does not match param given in property.dataDir syntax",
|
||||
new File(dataDirStr).getAbsolutePath(), dataDir.getAbsolutePath());
|
||||
|
||||
} finally {
|
||||
replica1Server.shutdown();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void deleteCollectionRemovesStaleZkCollectionsNode() throws Exception {
|
||||
|
||||
|
|
|
@ -18,17 +18,26 @@ package org.apache.solr.cloud;
|
|||
*/
|
||||
|
||||
import org.apache.lucene.util.LuceneTestCase;
|
||||
import org.apache.lucene.util.TestUtil;
|
||||
import org.apache.solr.client.solrj.SolrServerException;
|
||||
import org.apache.solr.client.solrj.impl.HttpSolrServer;
|
||||
import org.apache.solr.client.solrj.request.CollectionAdminRequest;
|
||||
import org.apache.solr.client.solrj.request.CoreAdminRequest;
|
||||
import org.apache.solr.client.solrj.response.CollectionAdminResponse;
|
||||
import org.apache.solr.client.solrj.response.CoreAdminResponse;
|
||||
import org.apache.solr.common.cloud.ClusterState;
|
||||
import org.apache.solr.common.cloud.DocCollection;
|
||||
import org.apache.solr.common.cloud.Replica;
|
||||
import org.apache.solr.common.cloud.Slice;
|
||||
import org.apache.solr.common.cloud.ZkStateReader;
|
||||
import org.apache.solr.common.params.CoreAdminParams;
|
||||
import org.apache.solr.common.util.NamedList;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.util.Collection;
|
||||
import java.util.Map;
|
||||
import java.util.Properties;
|
||||
|
||||
@LuceneTestCase.Slow
|
||||
public class CollectionsAPISolrJTests extends AbstractFullDistribZkTestBase {
|
||||
|
@ -39,7 +48,8 @@ public class CollectionsAPISolrJTests extends AbstractFullDistribZkTestBase {
|
|||
testCreateAndDeleteShard();
|
||||
testReloadCollection();
|
||||
testCreateAndDeleteAlias();
|
||||
testSplitShard();
|
||||
testSplitShard();
|
||||
testCreateCollectionWithPropertyParam();
|
||||
}
|
||||
|
||||
public void tearDown() throws Exception {
|
||||
|
@ -214,5 +224,54 @@ public class CollectionsAPISolrJTests extends AbstractFullDistribZkTestBase {
|
|||
assertEquals("ClusterState: "+ clusterState.getActiveSlices(collectionName), 5, slices.size());
|
||||
|
||||
}
|
||||
|
||||
|
||||
private void testCreateCollectionWithPropertyParam() throws Exception {
|
||||
String collectionName = "solrj_test_core_props";
|
||||
|
||||
File tmpDir = createTempDir("testPropertyParamsForCreate").toFile();
|
||||
File instanceDir = new File(tmpDir, "instanceDir-" + TestUtil.randomSimpleString(random(), 1, 5));
|
||||
File dataDir = new File(tmpDir, "dataDir-" + TestUtil.randomSimpleString(random(), 1, 5));
|
||||
File ulogDir = new File(tmpDir, "ulogDir-" + TestUtil.randomSimpleString(random(), 1, 5));
|
||||
|
||||
Properties properties = new Properties();
|
||||
properties.put(CoreAdminParams.INSTANCE_DIR, instanceDir.getAbsolutePath());
|
||||
properties.put(CoreAdminParams.DATA_DIR, dataDir.getAbsolutePath());
|
||||
properties.put(CoreAdminParams.ULOG_DIR, ulogDir.getAbsolutePath());
|
||||
|
||||
CollectionAdminRequest.Create createReq = new CollectionAdminRequest.Create();
|
||||
createReq.setCollectionName(collectionName);
|
||||
createReq.setNumShards(1);
|
||||
createReq.setConfigName("conf1");
|
||||
createReq.setProperties(properties);
|
||||
|
||||
CollectionAdminResponse response = createReq.process(cloudClient);
|
||||
assertEquals(0, response.getStatus());
|
||||
assertTrue(response.isSuccess());
|
||||
Map<String, NamedList<Integer>> coresStatus = response.getCollectionCoresStatus();
|
||||
assertEquals(1, coresStatus.size());
|
||||
|
||||
DocCollection testCollection = cloudClient.getZkStateReader()
|
||||
.getClusterState().getCollection(collectionName);
|
||||
|
||||
Replica replica1 = testCollection.getReplica("core_node1");
|
||||
|
||||
HttpSolrServer solrServer = new HttpSolrServer(replica1.getStr("base_url"));
|
||||
try {
|
||||
CoreAdminResponse status = CoreAdminRequest.getStatus(replica1.getStr("core"), solrServer);
|
||||
NamedList<Object> coreStatus = status.getCoreStatus(replica1.getStr("core"));
|
||||
String dataDirStr = (String) coreStatus.get("dataDir");
|
||||
String instanceDirStr = (String) coreStatus.get("instanceDir");
|
||||
assertEquals("Instance dir does not match param passed in property.instanceDir syntax",
|
||||
new File(instanceDirStr).getAbsolutePath(), instanceDir.getAbsolutePath());
|
||||
assertEquals("Data dir does not match param given in property.dataDir syntax",
|
||||
new File(dataDirStr).getAbsolutePath(), dataDir.getAbsolutePath());
|
||||
|
||||
} finally {
|
||||
solrServer.shutdown();
|
||||
}
|
||||
|
||||
CollectionAdminRequest.Delete deleteCollectionRequest = new CollectionAdminRequest.Delete();
|
||||
deleteCollectionRequest.setCollectionName(collectionName);
|
||||
deleteCollectionRequest.process(cloudClient);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue