You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ja...@apache.org on 2014/10/24 09:42:34 UTC
svn commit: r1634015 - in /lucene/dev/branches/lucene_solr_4_10: ./ solr/
solr/CHANGES.txt solr/core/
solr/core/src/java/org/apache/solr/cloud/CloudUtil.java
solr/core/src/java/org/apache/solr/schema/IndexSchema.java
Author: janhoy
Date: Fri Oct 24 07:42:34 2014
New Revision: 1634015
URL: http://svn.apache.org/r1634015
Log:
SOLR-6647: Bad error message when missing resource from ZK when parsing Schema (backport)
Modified:
lucene/dev/branches/lucene_solr_4_10/ (props changed)
lucene/dev/branches/lucene_solr_4_10/solr/ (props changed)
lucene/dev/branches/lucene_solr_4_10/solr/CHANGES.txt
lucene/dev/branches/lucene_solr_4_10/solr/core/ (props changed)
lucene/dev/branches/lucene_solr_4_10/solr/core/src/java/org/apache/solr/cloud/CloudUtil.java
lucene/dev/branches/lucene_solr_4_10/solr/core/src/java/org/apache/solr/schema/IndexSchema.java
Modified: lucene/dev/branches/lucene_solr_4_10/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene_solr_4_10/solr/CHANGES.txt?rev=1634015&r1=1634014&r2=1634015&view=diff
==============================================================================
--- lucene/dev/branches/lucene_solr_4_10/solr/CHANGES.txt (original)
+++ lucene/dev/branches/lucene_solr_4_10/solr/CHANGES.txt Fri Oct 24 07:42:34 2014
@@ -43,6 +43,8 @@ Bug Fixes
* SOLR-6646: bin/solr start script fails to detect solr on non-default port and then after
30s tails wrong log file (janhoy)
+* SOLR-6647: Bad error message when missing resource from ZK when parsing Schema (janhoy)
+
Other Changes
----------------------
Modified: lucene/dev/branches/lucene_solr_4_10/solr/core/src/java/org/apache/solr/cloud/CloudUtil.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene_solr_4_10/solr/core/src/java/org/apache/solr/cloud/CloudUtil.java?rev=1634015&r1=1634014&r2=1634015&view=diff
==============================================================================
--- lucene/dev/branches/lucene_solr_4_10/solr/core/src/java/org/apache/solr/cloud/CloudUtil.java (original)
+++ lucene/dev/branches/lucene_solr_4_10/solr/core/src/java/org/apache/solr/cloud/CloudUtil.java Fri Oct 24 07:42:34 2014
@@ -29,6 +29,7 @@ import org.apache.solr.common.cloud.Slic
import org.apache.solr.common.cloud.ZkStateReader;
import org.apache.solr.core.CoreContainer;
import org.apache.solr.core.CoreDescriptor;
+import org.apache.solr.core.SolrResourceLoader;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -84,4 +85,18 @@ public class CloudUtil {
}
}
}
+
+ /**
+ * Returns a displayable unified path to the given resource. For non-solrCloud that will be the
+ * same as getConfigDir, but for Cloud it will be getCollectionZkPath ending in a /
+ * <p/>
+ * <b>Note:</b> Do not use this to generate a valid file path, but for debug printing etc
+ * @param loader Resource loader instance
+ * @return a String of path to resource
+ */
+ public static String unifiedResourcePath(SolrResourceLoader loader) {
+ return (loader instanceof ZkSolrResourceLoader) ?
+ ((ZkSolrResourceLoader) loader).getCollectionZkPath() + "/" :
+ loader.getConfigDir();
+ }
}
Modified: lucene/dev/branches/lucene_solr_4_10/solr/core/src/java/org/apache/solr/schema/IndexSchema.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene_solr_4_10/solr/core/src/java/org/apache/solr/schema/IndexSchema.java?rev=1634015&r1=1634014&r2=1634015&view=diff
==============================================================================
--- lucene/dev/branches/lucene_solr_4_10/solr/core/src/java/org/apache/solr/schema/IndexSchema.java (original)
+++ lucene/dev/branches/lucene_solr_4_10/solr/core/src/java/org/apache/solr/schema/IndexSchema.java Fri Oct 24 07:42:34 2014
@@ -22,6 +22,7 @@ import org.apache.lucene.analysis.Delega
import org.apache.lucene.index.IndexableField;
import org.apache.lucene.search.similarities.Similarity;
import org.apache.lucene.util.Version;
+import org.apache.solr.cloud.CloudUtil;
import org.apache.solr.common.SolrException;
import org.apache.solr.common.SolrException.ErrorCode;
import org.apache.solr.common.params.SolrParams;
@@ -435,7 +436,8 @@ public class IndexSchema {
}
protected void readSchema(InputSource is) {
- log.info("Reading Solr Schema from " + resourceName);
+ String resourcePath = CloudUtil.unifiedResourcePath(loader) + resourceName;
+ log.info("Reading Solr Schema from " + resourcePath);
try {
// pass the config resource loader to avoid building an empty one for no reason:
@@ -591,11 +593,11 @@ public class IndexSchema {
}
} catch (SolrException e) {
throw new SolrException(ErrorCode.getErrorCode(e.code()), e.getMessage() + ". Schema file is " +
- loader.getConfigDir() + resourceName, e);
+ resourcePath, e);
} catch(Exception e) {
// unexpected exception...
throw new SolrException(ErrorCode.SERVER_ERROR,
- "Schema Parsing Failed: " + e.getMessage() + ". Schema file is " + loader.getConfigDir() + resourceName,
+ "Schema Parsing Failed: " + e.getMessage() + ". Schema file is " + resourcePath,
e);
}