diff --git a/build.properties b/build.properties index 23fc1b6..5c908f3 100644 --- a/build.properties +++ b/build.properties @@ -36,7 +36,7 @@ build.dir.test-reports=${build.dir}/test javac.debug=on javac.optimize=on javac.deprecation=off -javac.version=1.6 +javac.version=1.7 javac.args= javac.args.warnings=-Xlint:none build.encoding=UTF-8 diff --git a/build.xml b/build.xml index 44ab920..b15808b 100644 --- a/build.xml +++ b/build.xml @@ -226,7 +226,7 @@ - + diff --git a/pom.xml b/pom.xml index d6b486a..2ee0c45 100644 --- a/pom.xml +++ b/pom.xml @@ -35,7 +35,7 @@ 2.5.6 - 2.5.1 + 2.2.0 4.10.1 @@ -75,6 +75,13 @@ org.apache.solr solr-core ${solr.version} + + + + jdk.tools + jdk.tools + + @@ -83,6 +90,18 @@ 1.7.2 + + org.apache.hadoop + hadoop-client + ${hadoop.version} + + + + org.codehaus.jackson + jackson-mapper-asl + 1.8.3 + + @@ -92,7 +111,21 @@ test - + + + commons-logging + commons-logging + 1.1.1 + test + + + + commons-httpclient + commons-httpclient + 3.1 + + + org.mockito mockito-core 1.9.0 @@ -114,6 +147,7 @@ + ant-eclipse diff --git a/src/main/java/com/scaleunlimited/cascading/scheme/core/SolrSchemeUtil.java b/src/main/java/com/scaleunlimited/cascading/scheme/core/SolrSchemeUtil.java index a39b556..7f297b5 100644 --- a/src/main/java/com/scaleunlimited/cascading/scheme/core/SolrSchemeUtil.java +++ b/src/main/java/com/scaleunlimited/cascading/scheme/core/SolrSchemeUtil.java @@ -61,16 +61,14 @@ public static void validate(File solrCoreDir, String dataDirPropertyName, Fields File tmpDataDir = new File(tmpFolder, UUID.randomUUID().toString()); tmpDataDir.mkdir(); - System.setProperty("solr.solr.home", tmpSolrHome.getAbsolutePath()); System.setProperty(dataDirPropertyName, tmpDataDir.getAbsolutePath()); System.setProperty("enable.special-handlers", "false"); // All we need is the update request handler System.setProperty("enable.cache-warming", "false"); // We certainly don't need to warm the cache - CoreContainer.Initializer initializer = new CoreContainer.Initializer(); - CoreContainer coreContainer = null; + CoreContainer coreContainer = new CoreContainer(tmpSolrHome.getAbsolutePath()); try { - coreContainer = initializer.initialize(); + coreContainer.load(); Collection cores = coreContainer.getCores(); SolrCore core = null; @@ -82,7 +80,7 @@ public static void validate(File solrCoreDir, String dataDirPropertyName, Fields core = cores.iterator().next(); } - IndexSchema schema = core.getSchema(); + IndexSchema schema = core.getLatestSchema(); Map solrFields = schema.getFields(); Set schemeFieldnames = new HashSet(); diff --git a/src/main/java/com/scaleunlimited/cascading/scheme/core/SolrWriter.java b/src/main/java/com/scaleunlimited/cascading/scheme/core/SolrWriter.java index 27c29b6..93133bb 100644 --- a/src/main/java/com/scaleunlimited/cascading/scheme/core/SolrWriter.java +++ b/src/main/java/com/scaleunlimited/cascading/scheme/core/SolrWriter.java @@ -34,18 +34,18 @@ public SolrWriter(KeepAliveHook keepAlive, Fields sinkFields, String dataDirProp _maxSegments = maxSegments; _updateRequest = new BinaryUpdateRequest(); - // Set up overwite=false. See https://issues.apache.org/jira/browse/SOLR-653 + // Set up overwrite=false. See https://issues.apache.org/jira/browse/SOLR-653 // for details why we have to do it this way. _updateRequest.setParam(UpdateParams.OVERWRITE, Boolean.toString(false)); // Fire up an embedded Solr server try { - System.setProperty("solr.solr.home", SolrSchemeUtil.makeTempSolrHome(solrCoreDir).getAbsolutePath()); System.setProperty(dataDirPropertyName, dataDir); System.setProperty("enable.special-handlers", "false"); // All we need is the update request handler System.setProperty("enable.cache-warming", "false"); // We certainly don't need to warm the cache - CoreContainer.Initializer initializer = new CoreContainer.Initializer(); - _coreContainer = initializer.initialize(); + File solrHome = SolrSchemeUtil.makeTempSolrHome(solrCoreDir); + _coreContainer = new CoreContainer(solrHome.getAbsolutePath()); + _coreContainer.load(); _solrServer = new EmbeddedSolrServer(_coreContainer, solrCoreDir.getName()); } catch (Exception e) { if (_coreContainer != null) { diff --git a/src/test/java/com/scaleunlimited/cascading/scheme/core/AbstractSolrSchemeTest.java b/src/test/java/com/scaleunlimited/cascading/scheme/core/AbstractSolrSchemeTest.java index 21d5a75..fcfa40c 100644 --- a/src/test/java/com/scaleunlimited/cascading/scheme/core/AbstractSolrSchemeTest.java +++ b/src/test/java/com/scaleunlimited/cascading/scheme/core/AbstractSolrSchemeTest.java @@ -146,11 +146,10 @@ protected void testSimpleIndexing() throws Exception { flow.complete(); // Open up the Solr index, and do some searches. - System.setProperty("solr.solr.home", SOLR_HOME_DIR); System.setProperty("solr.data.dir", out + "/part-00000"); - CoreContainer.Initializer initializer = new CoreContainer.Initializer(); - CoreContainer coreContainer; - coreContainer = initializer.initialize(); + + CoreContainer coreContainer = new CoreContainer(SOLR_HOME_DIR); + coreContainer.load(); SolrServer solrServer = new EmbeddedSolrServer(coreContainer, ""); ModifiableSolrParams params = new ModifiableSolrParams(); diff --git a/src/test/resources/solr-home-4.1/collection1/conf/_rest_managed.json b/src/test/resources/solr-home-4.1/collection1/conf/_rest_managed.json new file mode 100644 index 0000000..e7ada3f --- /dev/null +++ b/src/test/resources/solr-home-4.1/collection1/conf/_rest_managed.json @@ -0,0 +1,3 @@ +{ + "initArgs":{}, + "managedList":[]} \ No newline at end of file