You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by th...@apache.org on 2014/12/24 19:32:22 UTC
svn commit: r1647825 - in /lucene/dev/trunk/solr: ./
core/src/java/org/apache/solr/rest/ example/example-DIH/
example/example-DIH/hsqldb/ example/example-DIH/solr/db/conf/
example/example-DIH/solr/mail/conf/ example/example-DIH/solr/rss/conf/
example/e...
Author: thelabdude
Date: Wed Dec 24 18:32:21 2014
New Revision: 1647825
URL: http://svn.apache.org/r1647825
Log:
SOLR-6855: bin/solr -e dih launches, but has some path cruft issues preventing some of the imports don't work
Removed:
lucene/dev/trunk/solr/example/example-DIH/hsqldb/ex.log
lucene/dev/trunk/solr/example/example-DIH/hsqldb/ex.properties
Modified:
lucene/dev/trunk/solr/CHANGES.txt
lucene/dev/trunk/solr/core/src/java/org/apache/solr/rest/ManagedResource.java
lucene/dev/trunk/solr/core/src/java/org/apache/solr/rest/RestManager.java
lucene/dev/trunk/solr/example/example-DIH/README.txt
lucene/dev/trunk/solr/example/example-DIH/hsqldb/ (props changed)
lucene/dev/trunk/solr/example/example-DIH/solr/db/conf/db-data-config.xml
lucene/dev/trunk/solr/example/example-DIH/solr/db/conf/schema.xml
lucene/dev/trunk/solr/example/example-DIH/solr/mail/conf/schema.xml
lucene/dev/trunk/solr/example/example-DIH/solr/rss/conf/schema.xml
lucene/dev/trunk/solr/example/example-DIH/solr/solr/conf/schema.xml
lucene/dev/trunk/solr/example/example-DIH/solr/tika/conf/schema.xml
lucene/dev/trunk/solr/example/example-DIH/solr/tika/conf/tika-data-config.xml
Modified: lucene/dev/trunk/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/CHANGES.txt?rev=1647825&r1=1647824&r2=1647825&view=diff
==============================================================================
--- lucene/dev/trunk/solr/CHANGES.txt (original)
+++ lucene/dev/trunk/solr/CHANGES.txt Wed Dec 24 18:32:21 2014
@@ -554,6 +554,9 @@ Other Changes
* SOLR-6885: Add core name to RecoveryThread name. (Christine Poerschke via shalin)
+* SOLR-6855: bin/solr -e dih launches, but has some path cruft issues preventing some of the
+ imports don't work (Hossman, Timothy Potter)
+
================== 4.10.3 ==================
Bug Fixes
Modified: lucene/dev/trunk/solr/core/src/java/org/apache/solr/rest/ManagedResource.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/java/org/apache/solr/rest/ManagedResource.java?rev=1647825&r1=1647824&r2=1647825&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/rest/ManagedResource.java (original)
+++ lucene/dev/trunk/solr/core/src/java/org/apache/solr/rest/ManagedResource.java Wed Dec 24 18:32:21 2014
@@ -185,10 +185,22 @@ public abstract class ManagedResource {
"Failed to load stored data for "+resourceId+" due to: "+ioExc, ioExc);
}
- Object managedData = null;
+ Object managedData = processStoredData(data);
+
+ if (managedInitArgs == null)
+ managedInitArgs = new NamedList<>();
+
+ onManagedDataLoadedFromStorage(managedInitArgs, managedData);
+ }
+
+ /**
+ * Processes the stored data.
+ */
+ protected Object processStoredData(Object data) throws SolrException {
+ Object managedData = null;
if (data != null) {
if (!(data instanceof Map)) {
- throw new SolrException(ErrorCode.SERVER_ERROR,
+ throw new SolrException(ErrorCode.SERVER_ERROR,
"Stored data for "+resourceId+" is not a valid JSON object!");
}
@@ -196,37 +208,32 @@ public abstract class ManagedResource {
Map<String,Object> initArgsMap = (Map<String,Object>)jsonMap.get(INIT_ARGS_JSON_FIELD);
managedInitArgs = new NamedList<>(initArgsMap);
log.info("Loaded initArgs {} for {}", managedInitArgs, resourceId);
-
+
if (jsonMap.containsKey(MANAGED_JSON_LIST_FIELD)) {
Object jsonList = jsonMap.get(MANAGED_JSON_LIST_FIELD);
if (!(jsonList instanceof List)) {
- String errMsg =
+ String errMsg =
String.format(Locale.ROOT,
"Expected JSON array as value for %s but client sent a %s instead!",
MANAGED_JSON_LIST_FIELD, jsonList.getClass().getName());
throw new SolrException(ErrorCode.SERVER_ERROR, errMsg);
}
-
+
managedData = jsonList;
} else if (jsonMap.containsKey(MANAGED_JSON_MAP_FIELD)) {
Object jsonObj = jsonMap.get(MANAGED_JSON_MAP_FIELD);
if (!(jsonObj instanceof Map)) {
- String errMsg =
+ String errMsg =
String.format(Locale.ROOT,
"Expected JSON map as value for %s but client sent a %s instead!",
MANAGED_JSON_MAP_FIELD, jsonObj.getClass().getName());
throw new SolrException(ErrorCode.SERVER_ERROR, errMsg);
}
-
+
managedData = jsonObj;
- }
- }
-
- if (managedInitArgs == null) {
- managedInitArgs = new NamedList<>();
+ }
}
-
- onManagedDataLoadedFromStorage(managedInitArgs, managedData);
+ return managedData;
}
/**
Modified: lucene/dev/trunk/solr/core/src/java/org/apache/solr/rest/RestManager.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/java/org/apache/solr/rest/RestManager.java?rev=1647825&r1=1647824&r2=1647825&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/rest/RestManager.java (original)
+++ lucene/dev/trunk/solr/core/src/java/org/apache/solr/rest/RestManager.java Wed Dec 24 18:32:21 2014
@@ -16,6 +16,7 @@ package org.apache.solr.rest;
* limitations under the License.
*/
+import java.io.FileNotFoundException;
import java.io.IOException;
import java.lang.reflect.Constructor;
import java.util.ArrayList;
@@ -450,6 +451,31 @@ public class RestManager {
}
/**
+ * Overrides the parent impl to handle FileNotFoundException better
+ */
+ @Override
+ protected synchronized void reloadFromStorage() throws SolrException {
+ String resourceId = getResourceId();
+ Object data = null;
+ try {
+ data = storage.load(resourceId);
+ } catch (FileNotFoundException fnf) {
+ // this is ok - simply means there are no managed components added yet
+ } catch (IOException ioExc) {
+ throw new SolrException(ErrorCode.SERVER_ERROR,
+ "Failed to load stored data for "+resourceId+" due to: "+ioExc, ioExc);
+ }
+
+ Object managedData = processStoredData(data);
+
+ if (managedInitArgs == null)
+ managedInitArgs = new NamedList<>();
+
+ if (managedData != null)
+ onManagedDataLoadedFromStorage(managedInitArgs, managedData);
+ }
+
+ /**
* Loads and initializes any ManagedResources that have been created but
* are not associated with any Solr components.
*/
@@ -457,12 +483,9 @@ public class RestManager {
@Override
protected void onManagedDataLoadedFromStorage(NamedList<?> managedInitArgs, Object managedData)
throws SolrException {
-
+
if (managedData == null) {
- // this is OK, just means there are no stored registrations
- // storing an empty list is safe and avoid future warnings about
- // the data not existing
- storeManagedData(new ArrayList<Map<String,String>>(0));
+ // this is ok - just means no managed components have been added yet
return;
}
Modified: lucene/dev/trunk/solr/example/example-DIH/README.txt
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/example/example-DIH/README.txt?rev=1647825&r1=1647824&r2=1647825&view=diff
==============================================================================
--- lucene/dev/trunk/solr/example/example-DIH/README.txt (original)
+++ lucene/dev/trunk/solr/example/example-DIH/README.txt Wed Dec 24 18:32:21 2014
@@ -16,12 +16,11 @@
Solr DataImportHandler example configuration
--------------------------------------------
-Change to the parent (example) directory. Start solr by executing the following command
+To run this example, use the "-e" option of the bin/solr script:
-> cd ..
-> java -Dsolr.solr.home="./example-DIH/solr/" -jar start.jar
+> bin/solr -e dih
-in this directory, and when Solr is started connect to:
+When Solr is started connect to:
http://localhost:8983/solr/
Modified: lucene/dev/trunk/solr/example/example-DIH/solr/db/conf/db-data-config.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/example/example-DIH/solr/db/conf/db-data-config.xml?rev=1647825&r1=1647824&r2=1647825&view=diff
==============================================================================
--- lucene/dev/trunk/solr/example/example-DIH/solr/db/conf/db-data-config.xml (original)
+++ lucene/dev/trunk/solr/example/example-DIH/solr/db/conf/db-data-config.xml Wed Dec 24 18:32:21 2014
@@ -1,5 +1,5 @@
<dataConfig>
- <dataSource driver="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:./example-DIH/hsqldb/ex" user="sa" />
+ <dataSource driver="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:${solr.install.dir}/example/example-DIH/hsqldb/ex" user="sa" />
<document>
<entity name="item" query="select * from item"
deltaQuery="select id from item where last_modified > '${dataimporter.last_index_time}'">
Modified: lucene/dev/trunk/solr/example/example-DIH/solr/db/conf/schema.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/example/example-DIH/solr/db/conf/schema.xml?rev=1647825&r1=1647824&r2=1647825&view=diff
==============================================================================
--- lucene/dev/trunk/solr/example/example-DIH/solr/db/conf/schema.xml (original)
+++ lucene/dev/trunk/solr/example/example-DIH/solr/db/conf/schema.xml Wed Dec 24 18:32:21 2014
@@ -432,15 +432,6 @@
</analyzer>
</fieldType>
- <!-- A text type for English text where stopwords and synonyms are managed using the REST API -->
- <fieldType name="managed_en" class="solr.TextField" positionIncrementGap="100">
- <analyzer>
- <tokenizer class="solr.StandardTokenizerFactory"/>
- <filter class="solr.ManagedStopFilterFactory" managed="english" />
- <filter class="solr.ManagedSynonymFilterFactory" managed="english" />
- </analyzer>
- </fieldType>
-
<!-- A general text field that has reasonable, generic
cross-language defaults: it tokenizes with StandardTokenizer,
removes stop words from case-insensitive "stopwords.txt"
Modified: lucene/dev/trunk/solr/example/example-DIH/solr/mail/conf/schema.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/example/example-DIH/solr/mail/conf/schema.xml?rev=1647825&r1=1647824&r2=1647825&view=diff
==============================================================================
--- lucene/dev/trunk/solr/example/example-DIH/solr/mail/conf/schema.xml (original)
+++ lucene/dev/trunk/solr/example/example-DIH/solr/mail/conf/schema.xml Wed Dec 24 18:32:21 2014
@@ -351,15 +351,6 @@
</analyzer>
</fieldType>
- <!-- A text type for English text where stopwords and synonyms are managed using the REST API -->
- <fieldType name="managed_en" class="solr.TextField" positionIncrementGap="100">
- <analyzer>
- <tokenizer class="solr.StandardTokenizerFactory"/>
- <filter class="solr.ManagedStopFilterFactory" managed="english" />
- <filter class="solr.ManagedSynonymFilterFactory" managed="english" />
- </analyzer>
- </fieldType>
-
<!-- A general text field that has reasonable, generic
cross-language defaults: it tokenizes with StandardTokenizer,
removes stop words from case-insensitive "stopwords.txt"
Modified: lucene/dev/trunk/solr/example/example-DIH/solr/rss/conf/schema.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/example/example-DIH/solr/rss/conf/schema.xml?rev=1647825&r1=1647824&r2=1647825&view=diff
==============================================================================
--- lucene/dev/trunk/solr/example/example-DIH/solr/rss/conf/schema.xml (original)
+++ lucene/dev/trunk/solr/example/example-DIH/solr/rss/conf/schema.xml Wed Dec 24 18:32:21 2014
@@ -382,15 +382,6 @@
</analyzer>
</fieldType>
- <!-- A text type for English text where stopwords and synonyms are managed using the REST API -->
- <fieldType name="managed_en" class="solr.TextField" positionIncrementGap="100">
- <analyzer>
- <tokenizer class="solr.StandardTokenizerFactory"/>
- <filter class="solr.ManagedStopFilterFactory" managed="english" />
- <filter class="solr.ManagedSynonymFilterFactory" managed="english" />
- </analyzer>
- </fieldType>
-
<!-- A general text field that has reasonable, generic
cross-language defaults: it tokenizes with StandardTokenizer,
removes stop words from case-insensitive "stopwords.txt"
Modified: lucene/dev/trunk/solr/example/example-DIH/solr/solr/conf/schema.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/example/example-DIH/solr/solr/conf/schema.xml?rev=1647825&r1=1647824&r2=1647825&view=diff
==============================================================================
--- lucene/dev/trunk/solr/example/example-DIH/solr/solr/conf/schema.xml (original)
+++ lucene/dev/trunk/solr/example/example-DIH/solr/solr/conf/schema.xml Wed Dec 24 18:32:21 2014
@@ -432,15 +432,6 @@
</analyzer>
</fieldType>
- <!-- A text type for English text where stopwords and synonyms are managed using the REST API -->
- <fieldType name="managed_en" class="solr.TextField" positionIncrementGap="100">
- <analyzer>
- <tokenizer class="solr.StandardTokenizerFactory"/>
- <filter class="solr.ManagedStopFilterFactory" managed="english" />
- <filter class="solr.ManagedSynonymFilterFactory" managed="english" />
- </analyzer>
- </fieldType>
-
<!-- A general text field that has reasonable, generic
cross-language defaults: it tokenizes with StandardTokenizer,
removes stop words from case-insensitive "stopwords.txt"
Modified: lucene/dev/trunk/solr/example/example-DIH/solr/tika/conf/schema.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/example/example-DIH/solr/tika/conf/schema.xml?rev=1647825&r1=1647824&r2=1647825&view=diff
==============================================================================
--- lucene/dev/trunk/solr/example/example-DIH/solr/tika/conf/schema.xml (original)
+++ lucene/dev/trunk/solr/example/example-DIH/solr/tika/conf/schema.xml Wed Dec 24 18:32:21 2014
@@ -314,15 +314,6 @@
</analyzer>
</fieldType>
- <!-- A text type for English text where stopwords and synonyms are managed using the REST API -->
- <fieldType name="managed_en" class="solr.TextField" positionIncrementGap="100">
- <analyzer>
- <tokenizer class="solr.StandardTokenizerFactory"/>
- <filter class="solr.ManagedStopFilterFactory" managed="english" />
- <filter class="solr.ManagedSynonymFilterFactory" managed="english" />
- </analyzer>
- </fieldType>
-
<!-- A general text field that has reasonable, generic
cross-language defaults: it tokenizes with StandardTokenizer,
and down cases. -->
Modified: lucene/dev/trunk/solr/example/example-DIH/solr/tika/conf/tika-data-config.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/example/example-DIH/solr/tika/conf/tika-data-config.xml?rev=1647825&r1=1647824&r2=1647825&view=diff
==============================================================================
--- lucene/dev/trunk/solr/example/example-DIH/solr/tika/conf/tika-data-config.xml (original)
+++ lucene/dev/trunk/solr/example/example-DIH/solr/tika/conf/tika-data-config.xml Wed Dec 24 18:32:21 2014
@@ -2,7 +2,7 @@
<dataSource type="BinFileDataSource" />
<document>
<entity name="tika-test" processor="TikaEntityProcessor"
- url="exampledocs/solr-word.pdf" format="text">
+ url="${solr.install.dir}/example/exampledocs/solr-word.pdf" format="text">
<field column="Author" name="author" meta="true"/>
<field column="title" name="title" meta="true"/>
<field column="text" name="text"/>