use of org.neo4j.cypher.internal.config.CypherConfiguration in project neo4j by neo4j.
the class ExecutionEngine method makeExecutionEngine.
protected static org.neo4j.cypher.internal.ExecutionEngine makeExecutionEngine(GraphDatabaseQueryService queryService, CaffeineCacheFactory cacheFactory, LogProvider logProvider, CompilerLibrary compilerLibrary) {
DependencyResolver resolver = queryService.getDependencyResolver();
Monitors monitors = resolver.resolveDependency(Monitors.class);
MonitoringCacheTracer cacheTracer = new MonitoringCacheTracer(monitors.newMonitor(ExecutionEngineQueryCacheMonitor.class));
Config config = resolver.resolveDependency(Config.class);
CypherConfiguration cypherConfiguration = CypherConfiguration.fromConfig(config);
CompilationTracer tracer = new TimingCompilationTracer(monitors.newMonitor(TimingCompilationTracer.EventListener.class));
return new org.neo4j.cypher.internal.ExecutionEngine(queryService, monitors, tracer, cacheTracer, cypherConfiguration, compilerLibrary, cacheFactory, logProvider, Clock.systemUTC());
}
use of org.neo4j.cypher.internal.config.CypherConfiguration in project neo4j by neo4j.
the class CommunityCypherEngineProvider method createEngine.
@Override
protected QueryExecutionEngine createEngine(Dependencies deps, GraphDatabaseAPI graphAPI, boolean isSystemDatabase, SPI spi) {
GraphDatabaseCypherService queryService = new GraphDatabaseCypherService(graphAPI);
deps.satisfyDependency(queryService);
CypherConfiguration cypherConfig = CypherConfiguration.fromConfig(spi.config());
CypherPlannerConfiguration plannerConfig = CypherPlannerConfiguration.fromCypherConfiguration(cypherConfig, spi.config(), isSystemDatabase);
CypherRuntimeConfiguration runtimeConfig = CypherRuntimeConfiguration.fromCypherConfiguration(cypherConfig);
CompilerFactory compilerFactory = makeCompilerFactory(queryService, spi, plannerConfig, runtimeConfig);
CaffeineCacheFactory cacheFactory = makeCacheFactory(spi);
if (isSystemDatabase) {
CypherPlannerConfiguration innerPlannerConfig = CypherPlannerConfiguration.fromCypherConfiguration(cypherConfig, spi.config(), false);
CompilerFactory innerCompilerFactory = makeCompilerFactory(queryService, spi, innerPlannerConfig, runtimeConfig);
return new SystemExecutionEngine(queryService, cacheFactory, spi.logProvider(), compilerFactory, innerCompilerFactory);
} else if (spi.config().get(GraphDatabaseInternalSettings.snapshot_query)) {
return new SnapshotExecutionEngine(queryService, spi.config(), cacheFactory, spi.logProvider(), compilerFactory);
} else {
return new ExecutionEngine(queryService, cacheFactory, spi.logProvider(), compilerFactory);
}
}
Aggregations