METRON-1589 '/api/v1/search/search' fails when 'Solr Zookeeper Urls' has comma separated multiple zookeeper urls (justinleet) closes apache/metron#1040
Project: http://git-wip-us.apache.org/repos/asf/metron/repo Commit: http://git-wip-us.apache.org/repos/asf/metron/commit/9348c608 Tree: http://git-wip-us.apache.org/repos/asf/metron/tree/9348c608 Diff: http://git-wip-us.apache.org/repos/asf/metron/diff/9348c608 Branch: refs/heads/feature/METRON-1554-pcap-query-panel Commit: 9348c608175afd311177b82fe31737f2f984c175 Parents: 7a071f6 Author: justinleet <justinjl...@gmail.com> Authored: Tue Jun 5 07:44:20 2018 -0400 Committer: leet <l...@apache.org> Committed: Tue Jun 5 07:44:20 2018 -0400 ---------------------------------------------------------------------- .../org/apache/metron/solr/SolrConstants.java | 1 + .../metron/solr/dao/SolrColumnMetadataDao.java | 14 +++--- .../org/apache/metron/solr/dao/SolrDao.java | 35 ++++++++++---- .../metron/solr/dao/SolrMetaAlertDao.java | 2 +- .../dao/SolrMetaAlertRetrieveLatestDao.java | 2 +- .../metron/solr/dao/SolrMetaAlertUpdateDao.java | 2 +- .../apache/metron/solr/writer/SolrWriter.java | 43 +++++++++--------- .../metron/solr/dao/SolrColumnMetadataTest.java | 11 ++--- .../org/apache/metron/solr/dao/SolrDaoTest.java | 48 ++++++++++++++++++-- .../metron/solr/dao/SolrMetaAlertDaoTest.java | 4 +- .../metron/solr/dao/SolrUpdateDaoTest.java | 3 +- .../SolrIndexingIntegrationTest.java | 4 +- .../SolrMetaAlertIntegrationTest.java | 5 +- .../integration/SolrSearchIntegrationTest.java | 4 +- .../integration/SolrUpdateIntegrationTest.java | 3 +- .../schema/SchemaValidationIntegrationTest.java | 3 +- 16 files changed, 126 insertions(+), 58 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/metron/blob/9348c608/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/SolrConstants.java ---------------------------------------------------------------------- diff --git a/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/SolrConstants.java b/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/SolrConstants.java index 879b983..56f1413 100644 --- a/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/SolrConstants.java +++ b/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/SolrConstants.java @@ -27,4 +27,5 @@ public class SolrConstants { public static final String REQUEST_COLLECTIONS_PATH = "/admin/collections"; public static final String RESPONSE_COLLECTIONS = "collections"; public static final String SOLR_WRITER_NAME = "solr"; + public static final String SOLR_ZOOKEEPER = "solr.zookeeper"; } http://git-wip-us.apache.org/repos/asf/metron/blob/9348c608/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrColumnMetadataDao.java ---------------------------------------------------------------------- diff --git a/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrColumnMetadataDao.java b/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrColumnMetadataDao.java index 1e074a9..22c6efa 100644 --- a/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrColumnMetadataDao.java +++ b/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrColumnMetadataDao.java @@ -29,6 +29,7 @@ import java.util.Map.Entry; import java.util.Set; import org.apache.metron.indexing.dao.ColumnMetadataDao; import org.apache.metron.indexing.dao.search.FieldType; +import org.apache.solr.client.solrj.SolrClient; import org.apache.solr.client.solrj.SolrQuery; import org.apache.solr.client.solrj.SolrServerException; import org.apache.solr.client.solrj.impl.CloudSolrClient; @@ -61,10 +62,10 @@ public class SolrColumnMetadataDao implements ColumnMetadataDao { solrTypeMap = Collections.unmodifiableMap(fieldTypeMap); } - private String zkHost; + private transient SolrClient client; - public SolrColumnMetadataDao(String zkHost) { - this.zkHost = zkHost; + public SolrColumnMetadataDao(SolrClient client) { + this.client = client; } @Override @@ -115,14 +116,11 @@ public class SolrColumnMetadataDao implements ColumnMetadataDao { protected List<Map<String, Object>> getIndexFields(String index) throws IOException, SolrServerException { - CloudSolrClient client = new CloudSolrClient.Builder().withZkHost(zkHost).build(); - client.setDefaultCollection(index); - List<Map<String, Object>> indexFields = new ArrayList<>(); // Get all the fields in use, including dynamic fields LukeRequest lukeRequest = new LukeRequest(); - LukeResponse lukeResponse = lukeRequest.process(client); + LukeResponse lukeResponse = lukeRequest.process(client, index); for (Entry<String, LukeResponse.FieldInfo> field : lukeResponse.getFieldInfo().entrySet()) { Map<String, Object> fieldData = new HashMap<>(); fieldData.put("name", field.getValue().getName()); @@ -132,7 +130,7 @@ public class SolrColumnMetadataDao implements ColumnMetadataDao { } // Get all the schema fields - SchemaRepresentation schemaRepresentation = new SchemaRequest().process(client) + SchemaRepresentation schemaRepresentation = new SchemaRequest().process(client, index) .getSchemaRepresentation(); indexFields.addAll(schemaRepresentation.getFields()); http://git-wip-us.apache.org/repos/asf/metron/blob/9348c608/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrDao.java ---------------------------------------------------------------------- diff --git a/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrDao.java b/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrDao.java index ee541eb..d461792 100644 --- a/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrDao.java +++ b/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrDao.java @@ -17,6 +17,9 @@ */ package org.apache.metron.solr.dao; +import static org.apache.metron.solr.SolrConstants.SOLR_ZOOKEEPER; + +import com.google.common.base.Splitter; import java.io.IOException; import java.lang.invoke.MethodHandles; import java.util.List; @@ -36,6 +39,7 @@ import org.apache.metron.indexing.dao.search.SearchResponse; import org.apache.metron.indexing.dao.update.Document; import org.apache.metron.indexing.dao.update.OriginalNotFoundException; import org.apache.metron.indexing.dao.update.PatchRequest; +import org.apache.metron.solr.SolrConstants; import org.apache.solr.client.solrj.SolrClient; import org.apache.solr.client.solrj.impl.CloudSolrClient; import org.apache.solr.client.solrj.impl.HttpClientUtil; @@ -81,14 +85,12 @@ public class SolrDao implements IndexDao { enableKerberos(); } if (this.client == null) { - Map<String, Object> globalConfig = config.getGlobalConfigSupplier().get(); - String zkHost = (String) globalConfig.get("solr.zookeeper"); - this.client = getSolrClient(zkHost); this.accessConfig = config; + this.client = getSolrClient(getZkHosts()); this.solrSearchDao = new SolrSearchDao(this.client, this.accessConfig); this.solrUpdateDao = new SolrUpdateDao(this.client, this.accessConfig); this.solrRetrieveLatestDao = new SolrRetrieveLatestDao(this.client); - this.solrColumnMetadataDao = new SolrColumnMetadataDao(zkHost); + this.solrColumnMetadataDao = new SolrColumnMetadataDao(this.client); } } @@ -134,13 +136,30 @@ public class SolrDao implements IndexDao { return this.solrColumnMetadataDao.getColumnMetadata(indices); } - public SolrClient getSolrClient(String zkHost) { - return new CloudSolrClient.Builder().withZkHost(zkHost).build(); + /** + * Builds a Solr client using the ZK hosts from the global config. + * @return SolrClient + */ + public SolrClient getSolrClient() { + return new CloudSolrClient.Builder().withZkHost(getZkHosts()).build(); + } + + /** + * Builds a Solr client using the ZK hosts specified. + * @return SolrClient + */ + public SolrClient getSolrClient(List<String> zkHosts) { + return new CloudSolrClient.Builder().withZkHost(zkHosts).build(); } - public String getZkHost() { + /** + * Get ZK hosts from the global config. + * @return List of ZkHosts + */ + public List<String> getZkHosts() { Map<String, Object> globalConfig = accessConfig.getGlobalConfigSupplier().get(); - return (String) globalConfig.get("solr.zookeeper"); + return Splitter.on(',').trimResults() + .splitToList((String) globalConfig.getOrDefault(SOLR_ZOOKEEPER, "")); } void enableKerberos() { http://git-wip-us.apache.org/repos/asf/metron/blob/9348c608/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrMetaAlertDao.java ---------------------------------------------------------------------- diff --git a/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrMetaAlertDao.java b/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrMetaAlertDao.java index ca4a172..e65700f 100644 --- a/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrMetaAlertDao.java +++ b/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrMetaAlertDao.java @@ -133,7 +133,7 @@ public class SolrMetaAlertDao implements MetaAlertDao { Constants.SENSOR_TYPE ); - SolrClient solrClient = solrDao.getSolrClient(solrDao.getZkHost()); + SolrClient solrClient = solrDao.getSolrClient(solrDao.getZkHosts()); this.metaAlertSearchDao = new SolrMetaAlertSearchDao(solrClient, solrDao.getSolrSearchDao()); this.metaAlertRetrieveLatestDao = new SolrMetaAlertRetrieveLatestDao(solrDao); this.metaAlertUpdateDao = new SolrMetaAlertUpdateDao( http://git-wip-us.apache.org/repos/asf/metron/blob/9348c608/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrMetaAlertRetrieveLatestDao.java ---------------------------------------------------------------------- diff --git a/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrMetaAlertRetrieveLatestDao.java b/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrMetaAlertRetrieveLatestDao.java index 7afe113..2797df2 100644 --- a/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrMetaAlertRetrieveLatestDao.java +++ b/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrMetaAlertRetrieveLatestDao.java @@ -52,7 +52,7 @@ public class SolrMetaAlertRetrieveLatestDao implements .setFields("*", "[child parentFilter=" + guidClause + " limit=999]"); try { - QueryResponse response = solrDao.getSolrClient(solrDao.getZkHost()) + QueryResponse response = solrDao.getSolrClient(solrDao.getZkHosts()) .query(METAALERTS_COLLECTION, query); // GUID is unique, so it's definitely the first result if (response.getResults().size() == 1) { http://git-wip-us.apache.org/repos/asf/metron/blob/9348c608/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrMetaAlertUpdateDao.java ---------------------------------------------------------------------- diff --git a/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrMetaAlertUpdateDao.java b/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrMetaAlertUpdateDao.java index b00954a..2a66d47 100644 --- a/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrMetaAlertUpdateDao.java +++ b/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/dao/SolrMetaAlertUpdateDao.java @@ -65,7 +65,7 @@ public class SolrMetaAlertUpdateDao extends AbstractLuceneMetaAlertUpdateDao imp SolrMetaAlertRetrieveLatestDao retrieveLatestDao, MetaAlertConfig config) { super(solrDao, retrieveLatestDao, config); - this.solrClient = solrDao.getSolrClient(solrDao.getZkHost()); + this.solrClient = solrDao.getSolrClient(solrDao.getZkHosts()); this.metaAlertSearchDao = metaAlertSearchDao; } http://git-wip-us.apache.org/repos/asf/metron/blob/9348c608/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/writer/SolrWriter.java ---------------------------------------------------------------------- diff --git a/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/writer/SolrWriter.java b/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/writer/SolrWriter.java index 93bd8fe..0289398 100644 --- a/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/writer/SolrWriter.java +++ b/metron-platform/metron-solr/src/main/java/org/apache/metron/solr/writer/SolrWriter.java @@ -17,47 +17,46 @@ */ package org.apache.metron.solr.writer; +import static org.apache.metron.solr.SolrConstants.SOLR_WRITER_NAME; + import com.google.common.base.Joiner; +import java.io.IOException; +import java.io.Serializable; +import java.lang.invoke.MethodHandles; +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.UUID; +import java.util.function.Supplier; import org.apache.commons.lang3.StringUtils; import org.apache.metron.common.Constants; +import org.apache.metron.common.configuration.writer.WriterConfiguration; +import org.apache.metron.common.writer.BulkMessageWriter; +import org.apache.metron.common.writer.BulkWriterResponse; +import org.apache.metron.solr.SolrConstants; import org.apache.metron.stellar.common.utils.ConversionUtils; +import org.apache.solr.client.solrj.SolrServerException; import org.apache.solr.client.solrj.impl.HttpClientUtil; import org.apache.solr.client.solrj.impl.HttpSolrClient; import org.apache.solr.client.solrj.impl.Krb5HttpClientConfigurer; +import org.apache.solr.client.solrj.response.UpdateResponse; import org.apache.solr.common.SolrException; +import org.apache.solr.common.SolrInputDocument; import org.apache.storm.task.TopologyContext; import org.apache.storm.tuple.Tuple; -import org.apache.metron.common.configuration.writer.WriterConfiguration; -import org.apache.metron.common.writer.BulkMessageWriter; -import org.apache.metron.common.writer.BulkWriterResponse; -import org.apache.solr.client.solrj.SolrServerException; -import org.apache.solr.client.solrj.response.UpdateResponse; -import org.apache.solr.common.SolrInputDocument; import org.json.simple.JSONObject; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.io.IOException; -import java.io.Serializable; -import java.lang.invoke.MethodHandles; -import java.util.HashMap; -import java.util.Map; -import java.util.Collection; -import java.util.Optional; -import java.util.List; -import java.util.ArrayList; -import java.util.Set; -import java.util.UUID; -import java.util.function.Supplier; - -import static org.apache.metron.solr.SolrConstants.SOLR_WRITER_NAME; - public class SolrWriter implements BulkMessageWriter<JSONObject>, Serializable { public static final String JAVA_SECURITY_CONFIG_PROPERTY = "java.security.auth.login.config"; public enum SolrProperties { - ZOOKEEPER_QUORUM("solr.zookeeper"), + ZOOKEEPER_QUORUM(SolrConstants.SOLR_ZOOKEEPER), COMMIT_PER_BATCH("solr.commitPerBatch", Optional.of(true)), COMMIT_WAIT_SEARCHER("solr.commit.waitSearcher", Optional.of(true)), COMMIT_WAIT_FLUSH("solr.commit.waitFlush", Optional.of(true)), http://git-wip-us.apache.org/repos/asf/metron/blob/9348c608/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrColumnMetadataTest.java ---------------------------------------------------------------------- diff --git a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrColumnMetadataTest.java b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrColumnMetadataTest.java index 6f98809..df471c8 100644 --- a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrColumnMetadataTest.java +++ b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrColumnMetadataTest.java @@ -18,6 +18,7 @@ package org.apache.metron.solr.dao; import org.apache.metron.indexing.dao.search.FieldType; +import org.apache.solr.client.solrj.SolrClient; import org.apache.solr.client.solrj.SolrServerException; import org.apache.solr.common.SolrException; import org.junit.Before; @@ -44,14 +45,12 @@ public class SolrColumnMetadataTest { @Rule public final ExpectedException exception = ExpectedException.none(); - private static final String zkHost = "zookeeper:2181"; - private SolrColumnMetadataDao solrColumnMetadataDao; @SuppressWarnings("unchecked") @Before public void setUp() throws Exception { - solrColumnMetadataDao = new SolrColumnMetadataDao(zkHost); + solrColumnMetadataDao = new SolrColumnMetadataDao(null); } @Test @@ -105,7 +104,7 @@ public class SolrColumnMetadataTest { put("type", "plong"); }}); - solrColumnMetadataDao = spy(new SolrColumnMetadataDao(zkHost)); + solrColumnMetadataDao = spy(new SolrColumnMetadataDao(null)); doReturn(broFields).when(solrColumnMetadataDao).getIndexFields("bro"); doReturn(snortFields).when(solrColumnMetadataDao).getIndexFields("snort"); @@ -129,7 +128,7 @@ public class SolrColumnMetadataTest { exception.expect(IOException.class); exception.expectMessage("solr exception"); - solrColumnMetadataDao = spy(new SolrColumnMetadataDao(zkHost)); + solrColumnMetadataDao = spy(new SolrColumnMetadataDao(null)); doThrow(new SolrServerException("solr exception")).when(solrColumnMetadataDao).getIndexFields("bro"); solrColumnMetadataDao.getColumnMetadata(Arrays.asList("bro", "snort")); @@ -137,7 +136,7 @@ public class SolrColumnMetadataTest { @Test public void getColumnMetadataShouldHandle400Exception() throws Exception { - solrColumnMetadataDao = spy(new SolrColumnMetadataDao(zkHost)); + solrColumnMetadataDao = spy(new SolrColumnMetadataDao(null)); SolrException solrException = new SolrException(SolrException.ErrorCode.BAD_REQUEST, "solr exception"); doThrow(solrException).when(solrColumnMetadataDao).getIndexFields("bro"); http://git-wip-us.apache.org/repos/asf/metron/blob/9348c608/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrDaoTest.java ---------------------------------------------------------------------- diff --git a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrDaoTest.java b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrDaoTest.java index fc328be..076fb20 100644 --- a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrDaoTest.java +++ b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrDaoTest.java @@ -17,6 +17,8 @@ */ package org.apache.metron.solr.dao; +import static org.apache.metron.solr.SolrConstants.SOLR_ZOOKEEPER; +import static org.junit.Assert.assertEquals; import static org.mockito.Mockito.verify; import static org.mockito.internal.verification.VerificationModeFactory.times; import static org.powermock.api.mockito.PowerMockito.doNothing; @@ -25,8 +27,11 @@ import static org.powermock.api.mockito.PowerMockito.mock; import static org.powermock.api.mockito.PowerMockito.spy; import static org.powermock.api.mockito.PowerMockito.whenNew; +import java.util.ArrayList; import java.util.Arrays; +import java.util.Collections; import java.util.HashMap; +import java.util.List; import java.util.Map; import java.util.Optional; import org.apache.metron.indexing.dao.AccessConfig; @@ -95,17 +100,17 @@ public class SolrDaoTest { AccessConfig accessConfig = new AccessConfig(); accessConfig.setGlobalConfigSupplier(() -> new HashMap<String, Object>() {{ - put("solr.zookeeper", "zookeeper:2181"); + put(SOLR_ZOOKEEPER, "zookeeper:2181"); }} ); solrDao = spy(new SolrDao()); - doReturn(client).when(solrDao).getSolrClient("zookeeper:2181"); + doReturn(client).when(solrDao).getSolrClient(Collections.singletonList("zookeeper:2181")); whenNew(SolrSearchDao.class).withArguments(client, accessConfig).thenReturn(solrSearchDao); whenNew(SolrUpdateDao.class).withArguments(client, accessConfig).thenReturn(solrUpdateDao); whenNew(SolrRetrieveLatestDao.class).withArguments(client) .thenReturn(solrRetrieveLatestDao); - whenNew(SolrColumnMetadataDao.class).withArguments("zookeeper:2181") + whenNew(SolrColumnMetadataDao.class).withArguments(client) .thenReturn(solrColumnMetadataDao); solrDao.init(accessConfig); @@ -139,4 +144,41 @@ public class SolrDaoTest { solrDao.getColumnMetadata(Arrays.asList("bro", "snort")); verify(solrColumnMetadataDao).getColumnMetadata(Arrays.asList("bro", "snort")); } + + @Test + public void testGetZkHostsSingle() { + AccessConfig accessConfig = new AccessConfig(); + accessConfig.setGlobalConfigSupplier(() -> + new HashMap<String, Object>() {{ + put(SOLR_ZOOKEEPER, " zookeeper:2181 "); + }} + ); + + SolrDao solrDao = new SolrDao(); + solrDao.init(accessConfig); + + List<String> actual = solrDao.getZkHosts(); + List<String> expected = new ArrayList<>(); + expected.add("zookeeper:2181"); + assertEquals(expected, actual); + } + + @Test + public void testGetZkHostsMultiple() { + AccessConfig accessConfig = new AccessConfig(); + accessConfig.setGlobalConfigSupplier(() -> + new HashMap<String, Object>() {{ + put(SOLR_ZOOKEEPER, " zookeeper:2181 , zookeeper2:2181 "); + }} + ); + + SolrDao solrDao = new SolrDao(); + solrDao.init(accessConfig); + + List<String> actual = solrDao.getZkHosts(); + List<String> expected = new ArrayList<>(); + expected.add("zookeeper:2181"); + expected.add("zookeeper2:2181"); + assertEquals(expected, actual); + } } http://git-wip-us.apache.org/repos/asf/metron/blob/9348c608/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrMetaAlertDaoTest.java ---------------------------------------------------------------------- diff --git a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrMetaAlertDaoTest.java b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrMetaAlertDaoTest.java index 5378467..4571b15 100644 --- a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrMetaAlertDaoTest.java +++ b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrMetaAlertDaoTest.java @@ -18,6 +18,8 @@ package org.apache.metron.solr.dao; +import static org.apache.metron.solr.SolrConstants.SOLR_ZOOKEEPER; + import java.io.IOException; import java.util.Collections; import java.util.HashMap; @@ -50,7 +52,7 @@ public class SolrMetaAlertDaoTest { public static void setupBefore() { accessConfig.setGlobalConfigSupplier(() -> new HashMap<String, Object>() {{ - put("solr.zookeeper", "zookeeper:2181"); + put(SOLR_ZOOKEEPER, "zookeeper:2181"); }} ); } http://git-wip-us.apache.org/repos/asf/metron/blob/9348c608/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrUpdateDaoTest.java ---------------------------------------------------------------------- diff --git a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrUpdateDaoTest.java b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrUpdateDaoTest.java index 0011aa8..41fe7f9 100644 --- a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrUpdateDaoTest.java +++ b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/dao/SolrUpdateDaoTest.java @@ -43,6 +43,7 @@ import java.util.HashMap; import java.util.Map; import java.util.Optional; +import static org.apache.metron.solr.SolrConstants.SOLR_ZOOKEEPER; import static org.mockito.Matchers.argThat; import static org.mockito.Matchers.eq; import static org.mockito.Mockito.mock; @@ -65,7 +66,7 @@ public class SolrUpdateDaoTest { public static void setupBefore() { accessConfig.setGlobalConfigSupplier(() -> new HashMap<String, Object>() {{ - put("solr.zookeeper", "zookeeper:2181"); + put(SOLR_ZOOKEEPER, "zookeeper:2181"); }} ); IndexingConfigurations indexingConfigs = mock(IndexingConfigurations.class); http://git-wip-us.apache.org/repos/asf/metron/blob/9348c608/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrIndexingIntegrationTest.java ---------------------------------------------------------------------- diff --git a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrIndexingIntegrationTest.java b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrIndexingIntegrationTest.java index 8e0ddd6..918a4ae 100644 --- a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrIndexingIntegrationTest.java +++ b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrIndexingIntegrationTest.java @@ -17,6 +17,8 @@ */ package org.apache.metron.solr.integration; +import static org.apache.metron.solr.SolrConstants.SOLR_ZOOKEEPER; + import com.google.common.base.Function; import java.util.List; import java.util.Map; @@ -60,7 +62,7 @@ public class SolrIndexingIntegrationTest extends IndexingIntegrationTest { String testZookeeperUrl = topologyProperties.getProperty(ZKServerComponent.ZOOKEEPER_PROPERTY); Configurations configurations = SampleUtil.getSampleConfigs(); Map<String, Object> globalConfig = configurations.getGlobalConfig(); - globalConfig.put("solr.zookeeper", solrComponent.getZookeeperUrl()); + globalConfig.put(SOLR_ZOOKEEPER, solrComponent.getZookeeperUrl()); ConfigurationsUtils.writeGlobalConfigToZookeeper(JSONUtils.INSTANCE.toJSONPretty(globalConfig), testZookeeperUrl); } catch (Exception e) { e.printStackTrace(); http://git-wip-us.apache.org/repos/asf/metron/blob/9348c608/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrMetaAlertIntegrationTest.java ---------------------------------------------------------------------- diff --git a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrMetaAlertIntegrationTest.java b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrMetaAlertIntegrationTest.java index aced539..f7dd02c 100644 --- a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrMetaAlertIntegrationTest.java +++ b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrMetaAlertIntegrationTest.java @@ -23,6 +23,7 @@ import static org.apache.metron.indexing.dao.metaalert.MetaAlertConstants.METAAL import static org.apache.metron.indexing.dao.metaalert.MetaAlertConstants.METAALERT_TYPE; import static org.apache.metron.indexing.dao.metaalert.MetaAlertConstants.THREAT_FIELD_DEFAULT; import static org.apache.metron.indexing.dao.metaalert.MetaAlertConstants.THREAT_SORT_DEFAULT; +import static org.apache.metron.solr.SolrConstants.SOLR_ZOOKEEPER; import static org.apache.metron.solr.dao.SolrMetaAlertDao.METAALERTS_COLLECTION; import java.io.IOException; @@ -80,7 +81,7 @@ public class SolrMetaAlertIntegrationTest extends MetaAlertIntegrationTest { put("solr.port", "9300"); put("solr.ip", "localhost"); put("solr.date.format", DATE_FORMAT); - put("solr.zookeeper", solr.getZookeeperUrl()); + put(SOLR_ZOOKEEPER, solr.getZookeeperUrl()); } }; accessConfig.setMaxSearchResults(1000); @@ -100,7 +101,7 @@ public class SolrMetaAlertIntegrationTest extends MetaAlertIntegrationTest { ); SolrMetaAlertSearchDao searchDao = new SolrMetaAlertSearchDao( - solrDao.getSolrClient(solrDao.getZkHost()), + solrDao.getSolrClient(solrDao.getZkHosts()), solrDao.getSolrSearchDao()); SolrMetaAlertRetrieveLatestDao retrieveLatestDao = new SolrMetaAlertRetrieveLatestDao(solrDao); SolrMetaAlertUpdateDao updateDao = new SolrMetaAlertUpdateDao(solrDao, searchDao, http://git-wip-us.apache.org/repos/asf/metron/blob/9348c608/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrSearchIntegrationTest.java ---------------------------------------------------------------------- diff --git a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrSearchIntegrationTest.java b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrSearchIntegrationTest.java index 2fb3086..f09d7a8 100644 --- a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrSearchIntegrationTest.java +++ b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrSearchIntegrationTest.java @@ -17,6 +17,8 @@ */ package org.apache.metron.solr.integration; +import static org.apache.metron.solr.SolrConstants.SOLR_ZOOKEEPER; + import java.io.IOException; import java.util.Arrays; import java.util.Collections; @@ -78,7 +80,7 @@ public class SolrSearchIntegrationTest extends SearchIntegrationTest { config.setMaxSearchGroups(100); config.setGlobalConfigSupplier( () -> new HashMap<String, Object>() {{ - put("solr.zookeeper", solrComponent.getZookeeperUrl()); + put(SOLR_ZOOKEEPER, solrComponent.getZookeeperUrl()); }} ); http://git-wip-us.apache.org/repos/asf/metron/blob/9348c608/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrUpdateIntegrationTest.java ---------------------------------------------------------------------- diff --git a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrUpdateIntegrationTest.java b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrUpdateIntegrationTest.java index 8f1ff12..7faeeb9 100644 --- a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrUpdateIntegrationTest.java +++ b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/SolrUpdateIntegrationTest.java @@ -17,6 +17,7 @@ */ package org.apache.metron.solr.integration; +import static org.apache.metron.solr.SolrConstants.SOLR_ZOOKEEPER; import static org.junit.Assert.assertEquals; import java.io.IOException; @@ -107,7 +108,7 @@ public class SolrUpdateIntegrationTest extends UpdateIntegrationTest { private static Map<String, Object> createGlobalConfig() { return new HashMap<String, Object>() {{ - put("solr.zookeeper", solrComponent.getZookeeperUrl()); + put(SOLR_ZOOKEEPER, solrComponent.getZookeeperUrl()); }}; } http://git-wip-us.apache.org/repos/asf/metron/blob/9348c608/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/schema/SchemaValidationIntegrationTest.java ---------------------------------------------------------------------- diff --git a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/schema/SchemaValidationIntegrationTest.java b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/schema/SchemaValidationIntegrationTest.java index 73113f6..2b523d8 100644 --- a/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/schema/SchemaValidationIntegrationTest.java +++ b/metron-platform/metron-solr/src/test/java/org/apache/metron/solr/integration/schema/SchemaValidationIntegrationTest.java @@ -38,6 +38,7 @@ import java.io.IOException; import java.nio.charset.Charset; import java.util.*; +import static org.apache.metron.solr.SolrConstants.SOLR_ZOOKEEPER; import static org.mockito.Mockito.mock; public class SchemaValidationIntegrationTest { @@ -50,7 +51,7 @@ public class SchemaValidationIntegrationTest { public static Map<String, Object> getGlobalConfig(String sensorType, SolrComponent component) { Map<String, Object> globalConfig = new HashMap<>(); - globalConfig.put("solr.zookeeper", component.getZookeeperUrl()); + globalConfig.put(SOLR_ZOOKEEPER, component.getZookeeperUrl()); return globalConfig; }