Search in sources :

Example 1 with IndexModule

use of org.opensearch.index.IndexModule in project OpenSearch by opensearch-project.

the class IndicesService method createIndexService.

/**
 * This creates a new IndexService without registering it
 */
private synchronized IndexService createIndexService(IndexService.IndexCreationContext indexCreationContext, IndexMetadata indexMetadata, IndicesQueryCache indicesQueryCache, IndicesFieldDataCache indicesFieldDataCache, List<IndexEventListener> builtInListeners, IndexingOperationListener... indexingOperationListeners) throws IOException {
    final IndexSettings idxSettings = new IndexSettings(indexMetadata, settings, indexScopedSettings);
    if (idxSettings.getIndexVersionCreated().onOrAfter(LegacyESVersion.V_7_0_0) && EngineConfig.INDEX_OPTIMIZE_AUTO_GENERATED_IDS.exists(idxSettings.getSettings())) {
        throw new IllegalArgumentException("Setting [" + EngineConfig.INDEX_OPTIMIZE_AUTO_GENERATED_IDS.getKey() + "] was removed in version 7.0.0");
    }
    // we ignore private settings since they are not registered settings
    indexScopedSettings.validate(indexMetadata.getSettings(), true, true, true);
    logger.debug("creating Index [{}], shards [{}]/[{}] - reason [{}]", indexMetadata.getIndex(), idxSettings.getNumberOfShards(), idxSettings.getNumberOfReplicas(), indexCreationContext);
    final IndexModule indexModule = new IndexModule(idxSettings, analysisRegistry, getEngineFactory(idxSettings), getEngineConfigFactory(idxSettings), directoryFactories, () -> allowExpensiveQueries, indexNameExpressionResolver, recoveryStateFactories);
    for (IndexingOperationListener operationListener : indexingOperationListeners) {
        indexModule.addIndexOperationListener(operationListener);
    }
    pluginsService.onIndexModule(indexModule);
    for (IndexEventListener listener : builtInListeners) {
        indexModule.addIndexEventListener(listener);
    }
    return indexModule.newIndexService(indexCreationContext, nodeEnv, xContentRegistry, this, circuitBreakerService, bigArrays, threadPool, scriptService, clusterService, client, indicesQueryCache, mapperRegistry, indicesFieldDataCache, namedWriteableRegistry, this::isIdFieldDataEnabled, valuesSourceRegistry);
}
Also used : IndexingOperationListener(org.opensearch.index.shard.IndexingOperationListener) IndexEventListener(org.opensearch.index.shard.IndexEventListener) IndexSettings(org.opensearch.index.IndexSettings) IndexModule(org.opensearch.index.IndexModule)

Example 2 with IndexModule

use of org.opensearch.index.IndexModule in project OpenSearch by opensearch-project.

the class IndicesService method createIndexMapperService.

/**
 * creates a new mapper service for the given index, in order to do administrative work like mapping updates.
 * This *should not* be used for document parsing. Doing so will result in an exception.
 *
 * Note: the returned {@link MapperService} should be closed when unneeded.
 */
public synchronized MapperService createIndexMapperService(IndexMetadata indexMetadata) throws IOException {
    final IndexSettings idxSettings = new IndexSettings(indexMetadata, this.settings, indexScopedSettings);
    final IndexModule indexModule = new IndexModule(idxSettings, analysisRegistry, getEngineFactory(idxSettings), getEngineConfigFactory(idxSettings), directoryFactories, () -> allowExpensiveQueries, indexNameExpressionResolver, recoveryStateFactories);
    pluginsService.onIndexModule(indexModule);
    return indexModule.newIndexMapperService(xContentRegistry, mapperRegistry, scriptService);
}
Also used : IndexSettings(org.opensearch.index.IndexSettings) IndexModule(org.opensearch.index.IndexModule)

Aggregations

IndexModule (org.opensearch.index.IndexModule)2 IndexSettings (org.opensearch.index.IndexSettings)2 IndexEventListener (org.opensearch.index.shard.IndexEventListener)1 IndexingOperationListener (org.opensearch.index.shard.IndexingOperationListener)1