public class CoreContainer extends Object
Modifier and Type | Class and Description |
---|---|
static class |
CoreContainer.CoreLoadFailure |
Modifier and Type | Field and Description |
---|---|
protected NodeConfig |
cfg |
protected CollectionsHandler |
collectionsHandler |
protected ConfigSetsHandler |
configSetsHandler |
protected Properties |
containerProperties |
protected CoreAdminHandler |
coreAdminHandler |
protected Map<String,CoreContainer.CoreLoadFailure> |
coreInitFailures |
protected CoresLocator |
coresLocator |
protected SolrResourceLoader |
loader |
protected LogWatcher |
logging |
protected SolrMetricManager |
metricManager |
protected MetricsHandler |
metricsHandler |
protected SecurityConfHandler |
securityConfHandler |
protected ShardHandlerFactory |
shardHandlerFactory |
protected String |
solrHome |
protected TransientSolrCoreCache |
transientSolrCoreCache |
protected ZkContainer |
zkSys |
Modifier | Constructor and Description |
---|---|
|
CoreContainer()
Create a new CoreContainer using system properties to detect the solr home
directory.
|
|
CoreContainer(NodeConfig config)
Create a new CoreContainer using the given SolrResourceLoader,
configuration and CoresLocator.
|
|
CoreContainer(NodeConfig config,
Properties properties) |
|
CoreContainer(NodeConfig config,
Properties properties,
boolean asyncSolrCoreLoad) |
|
CoreContainer(NodeConfig config,
Properties properties,
CoresLocator locator) |
|
CoreContainer(NodeConfig config,
Properties properties,
CoresLocator locator,
boolean asyncSolrCoreLoad) |
protected |
CoreContainer(Object testConstructor)
This method allows subclasses to construct a CoreContainer
without any default init behavior.
|
|
CoreContainer(SolrResourceLoader loader)
Create a new CoreContainer using the given SolrResourceLoader.
|
|
CoreContainer(String solrHome)
Create a new CoreContainer using the given solr home directory.
|
Modifier and Type | Method and Description |
---|---|
void |
cancelCoreRecoveries() |
SolrCore |
create(String coreName,
Map<String,String> parameters)
Creates a new core, publishing the core state to the cluster
|
SolrCore |
create(String coreName,
Path instancePath,
Map<String,String> parameters,
boolean newCollection)
Creates a new core in a specified instance directory, publishing the core state to the cluster
|
static CoreContainer |
createAndLoad(Path solrHome) |
static CoreContainer |
createAndLoad(Path solrHome,
Path configFile)
Create a new CoreContainer and load its cores
|
protected <T> T |
createHandler(String path,
String handlerClass,
Class<T> clazz) |
protected void |
finalize() |
Collection<String> |
getAllCoreNames()
get a list of all the cores that are currently loaded
|
AuthenticationPlugin |
getAuthenticationPlugin() |
AuthorizationPlugin |
getAuthorizationPlugin() |
BlobRepository |
getBlobRepository() |
CollectionsHandler |
getCollectionsHandler() |
NodeConfig |
getConfig() |
ConfigSetsHandler |
getConfigSetsHandler() |
Properties |
getContainerProperties() |
SolrCore |
getCore(String name)
Gets a core by name and increase its refcount.
|
CoreDescriptor |
getCoreDescriptor(String coreName) |
List<CoreDescriptor> |
getCoreDescriptors()
Get the CoreDescriptors for all cores managed by this container
|
Map<String,CoreContainer.CoreLoadFailure> |
getCoreInitFailures()
Returns an immutable Map of Exceptions that occured when initializing
SolrCores (either at startup, or do to runtime requests to create cores)
keyed off of the name (String) of the SolrCore that had the Exception
during initialization.
|
Collection<String> |
getCoreNames(SolrCore core)
This method is currently experimental.
|
Path |
getCoreRootDirectory() |
Collection<SolrCore> |
getCores() |
CoresLocator |
getCoresLocator() |
ExecutorService |
getCoreZkRegisterExecutorService() |
String |
getHostName() |
InfoHandler |
getInfoHandler() |
Collection<String> |
getLoadedCoreNames() |
LogWatcher |
getLogging() |
String |
getManagementPath()
Gets the alternate path for multicore handling:
This is used in case there is a registered unnamed core (aka name is "") to
declare an alternate way of accessing named cores.
|
SolrMetricManager |
getMetricManager() |
CoreAdminHandler |
getMultiCoreHandler() |
NodeConfig |
getNodeConfig() |
PKIAuthenticationPlugin |
getPkiAuthenticationPlugin() |
SolrRequestHandler |
getRequestHandler(String path) |
PluginBag<SolrRequestHandler> |
getRequestHandlers() |
SolrResourceLoader |
getResourceLoader() |
ShardHandlerFactory |
getShardHandlerFactory()
The default ShardHandlerFactory used to communicate with other solr instances
|
String |
getSolrHome() |
TransientSolrCoreCache |
getTransientCacheHandler() |
CoreDescriptor |
getUnloadedCoreDescriptor(String cname)
Gets a solr core descriptor for a core that is not loaded.
|
UpdateShardHandler |
getUpdateShardHandler() |
ZkController |
getZkController() |
boolean |
isCoreLoading(String name) |
boolean |
isLoaded(String name)
Determines whether the core is already loaded or not but does NOT load the core
|
boolean |
isLoadedNotPendingClose(String name) |
boolean |
isShutDown() |
boolean |
isZooKeeperAware() |
void |
load()
Load the cores defined for this CoreContainer
|
BackupRepository |
newBackupRepository(Optional<String> repositoryName)
This method instantiates a new instance of BackupRepository.
|
protected SolrCore |
registerCore(CoreDescriptor cd,
SolrCore core,
boolean registerInZk,
boolean skipRecovery) |
void |
reload(String name)
Recreates a SolrCore.
|
void |
rename(String name,
String toName) |
void |
securityNodeChanged() |
void |
shutdown()
Stops all cores.
|
void |
swap(String n0,
String n1)
Swaps two SolrCore descriptors.
|
void |
unload(String name)
Unload a core from this container, leaving all files on disk
|
void |
unload(String name,
boolean deleteIndexDir,
boolean deleteDataDir,
boolean deleteInstanceDir)
Unload a core from this container, optionally removing the core's data and configuration
|
void |
waitForLoadingCore(String name,
long timeoutMs) |
void |
waitForLoadingCoresToFinish(long timeoutMs)
If using asyncSolrCoreLoad=true, calling this after
load() will
not return until all cores have finished loading. |
protected final Map<String,CoreContainer.CoreLoadFailure> coreInitFailures
protected CoreAdminHandler coreAdminHandler
protected CollectionsHandler collectionsHandler
protected TransientSolrCoreCache transientSolrCoreCache
protected ConfigSetsHandler configSetsHandler
protected Properties containerProperties
protected ZkContainer zkSys
protected ShardHandlerFactory shardHandlerFactory
protected LogWatcher logging
protected final NodeConfig cfg
protected final SolrResourceLoader loader
protected final String solrHome
protected final CoresLocator coresLocator
protected SecurityConfHandler securityConfHandler
protected SolrMetricManager metricManager
protected MetricsHandler metricsHandler
public CoreContainer()
load()
public CoreContainer(SolrResourceLoader loader)
loader
- the SolrResourceLoaderload()
public CoreContainer(String solrHome)
solrHome
- a String containing the path to the solr home directoryload()
public CoreContainer(NodeConfig config)
config
- a ConfigSolr representation of this container's configurationload()
public CoreContainer(NodeConfig config, Properties properties)
public CoreContainer(NodeConfig config, Properties properties, boolean asyncSolrCoreLoad)
public CoreContainer(NodeConfig config, Properties properties, CoresLocator locator)
public CoreContainer(NodeConfig config, Properties properties, CoresLocator locator, boolean asyncSolrCoreLoad)
protected CoreContainer(Object testConstructor)
testConstructor
- pass (Object)null.public BackupRepository newBackupRepository(Optional<String> repositoryName)
repositoryName
- The name of the backup repository (Optional).
If not specified, a default implementation is used.public ExecutorService getCoreZkRegisterExecutorService()
public SolrRequestHandler getRequestHandler(String path)
public PluginBag<SolrRequestHandler> getRequestHandlers()
public static CoreContainer createAndLoad(Path solrHome)
public static CoreContainer createAndLoad(Path solrHome, Path configFile)
solrHome
- the solr home directoryconfigFile
- the file containing this container's configurationpublic Properties getContainerProperties()
public PKIAuthenticationPlugin getPkiAuthenticationPlugin()
public SolrMetricManager getMetricManager()
public void load()
public TransientSolrCoreCache getTransientCacheHandler()
public void securityNodeChanged()
public boolean isShutDown()
public void shutdown()
public void cancelCoreRecoveries()
protected void finalize() throws Throwable
public CoresLocator getCoresLocator()
protected SolrCore registerCore(CoreDescriptor cd, SolrCore core, boolean registerInZk, boolean skipRecovery)
public SolrCore create(String coreName, Map<String,String> parameters)
coreName
- the core nameparameters
- the core parameterspublic SolrCore create(String coreName, Path instancePath, Map<String,String> parameters, boolean newCollection)
coreName
- the core nameinstancePath
- the instance directoryparameters
- the core parameterspublic Collection<SolrCore> getCores()
public Collection<String> getLoadedCoreNames()
public Collection<String> getCoreNames(SolrCore core)
public Collection<String> getAllCoreNames()
public Map<String,CoreContainer.CoreLoadFailure> getCoreInitFailures()
While the Map returned by this method is immutable and will not change once returned to the client, the source data used to generate this Map can be changed as various SolrCore operations are performed:
public void reload(String name)
name
- the name of the SolrCore to reloadpublic void unload(String name)
name
- the name of the core to unloadpublic void unload(String name, boolean deleteIndexDir, boolean deleteDataDir, boolean deleteInstanceDir)
name
- the name of the core to unloaddeleteIndexDir
- if true, delete the core's index on closedeleteDataDir
- if true, delete the core's data directory on closedeleteInstanceDir
- if true, delete the core's instance directory on closepublic List<CoreDescriptor> getCoreDescriptors()
public CoreDescriptor getCoreDescriptor(String coreName)
public Path getCoreRootDirectory()
public SolrCore getCore(String name)
name
- the core nameSolrCoreInitializationException
- if a SolrCore with this name failed to be initializedSolrCore.close()
public BlobRepository getBlobRepository()
public void waitForLoadingCoresToFinish(long timeoutMs)
load()
will
not return until all cores have finished loading.timeoutMs
- timeout, upon which method simply returnspublic void waitForLoadingCore(String name, long timeoutMs)
public CoreAdminHandler getMultiCoreHandler()
public CollectionsHandler getCollectionsHandler()
public InfoHandler getInfoHandler()
public ConfigSetsHandler getConfigSetsHandler()
public String getHostName()
public String getManagementPath()
public LogWatcher getLogging()
public boolean isLoaded(String name)
public boolean isLoadedNotPendingClose(String name)
public CoreDescriptor getUnloadedCoreDescriptor(String cname)
cname
- - name of the unloaded core descriptor to load. NOTE:public String getSolrHome()
public boolean isZooKeeperAware()
public ZkController getZkController()
public NodeConfig getConfig()
public ShardHandlerFactory getShardHandlerFactory()
public UpdateShardHandler getUpdateShardHandler()
public SolrResourceLoader getResourceLoader()
public boolean isCoreLoading(String name)
public AuthorizationPlugin getAuthorizationPlugin()
public AuthenticationPlugin getAuthenticationPlugin()
public NodeConfig getNodeConfig()
Copyright © 2000-2017 Apache Software Foundation. All Rights Reserved.