SOLR-6188: Only load resources in SOLRHOME/lib once.

git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/trunk@1707630 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Shawn Heisey 2015-10-08 22:40:53 +00:00
parent c8b1059b30
commit 99ede423de
2 changed files with 15 additions and 2 deletions

View File

@ -71,6 +71,11 @@ New Features
* SOLR-8038: Add the StatsStream to the Streaming API and wire it into the SQLHandler (Joel Bernstein)
* SOLR-6188: Skip the automatic loading of resources in the "lib" subdirectory
by SolrResourceLoader, but only if we are loading resources from the solr
home directory. Fixes the inability to use ICU analysis components with a
"solr." prefix on the classname. (Shawn Heisey)
Optimizations
----------------------
* SOLR-7876: Speed up queries and operations that use many terms when timeAllowed has not been

View File

@ -140,8 +140,16 @@ public class SolrResourceLoader implements ResourceLoader,Closeable
}
this.classLoader = createClassLoader(null, parent);
addToClassLoader("./lib/", null, true);
reloadLuceneSPI();
/*
* Skip the lib subdirectory when we are loading from the solr home.
* Otherwise load it, so core lib directories still get loaded.
* The default sharedLib will pick this up later, and if the user has
* changed sharedLib, then we don't want to load that location anyway.
*/
if (! this.instanceDir.equals(SolrResourceLoader.locateSolrHome())) {
addToClassLoader("./lib/", null, true);
reloadLuceneSPI();
}
this.coreProperties = coreProperties;
}