Skip to content

Commit

Permalink
Update lookup od neostore data source in data source manager to
Browse files Browse the repository at this point in the history
use last available database as a default database;
update extension lookup to use NeoStoreDataSource directly.
  • Loading branch information
MishaDemianenko committed Aug 1, 2018
1 parent 3b559e9 commit 4c2b0f6
Show file tree
Hide file tree
Showing 4 changed files with 12 additions and 10 deletions.
Expand Up @@ -349,6 +349,7 @@ public void start() throws IOException
dataSourceDependencies.satisfyDependency( monitors ); dataSourceDependencies.satisfyDependency( monitors );
dataSourceDependencies.satisfyDependency( tokenHolders ); dataSourceDependencies.satisfyDependency( tokenHolders );
dataSourceDependencies.satisfyDependency( facade ); dataSourceDependencies.satisfyDependency( facade );
dataSourceDependencies.satisfyDependency( this );


life = new LifeSupport(); life = new LifeSupport();
dataSourceDependencies.satisfyDependency( explicitIndexProvider ); dataSourceDependencies.satisfyDependency( explicitIndexProvider );
Expand Down
Expand Up @@ -24,6 +24,7 @@
import java.util.function.Supplier; import java.util.function.Supplier;


import org.neo4j.helpers.Listeners; import org.neo4j.helpers.Listeners;
import org.neo4j.helpers.collection.Iterables;
import org.neo4j.internal.kernel.api.Kernel; import org.neo4j.internal.kernel.api.Kernel;
import org.neo4j.kernel.NeoStoreDataSource; import org.neo4j.kernel.NeoStoreDataSource;
import org.neo4j.kernel.lifecycle.LifeSupport; import org.neo4j.kernel.lifecycle.LifeSupport;
Expand Down Expand Up @@ -83,7 +84,7 @@ public void unregister( NeoStoreDataSource dataSource )


public NeoStoreDataSource getDataSource() public NeoStoreDataSource getDataSource()
{ {
return dataSources.get( 0 ); return Iterables.last( dataSources );
} }


@Override @Override
Expand Down Expand Up @@ -126,6 +127,6 @@ public void shutdown()
@Override @Override
public Kernel get() public Kernel get()
{ {
return dataSources.get( 0 ).getKernel(); return getDataSource().getKernel();
} }
} }
Expand Up @@ -26,8 +26,8 @@
import org.neo4j.io.fs.FileSystemAbstraction; import org.neo4j.io.fs.FileSystemAbstraction;
import org.neo4j.io.pagecache.PageCache; import org.neo4j.io.pagecache.PageCache;
import org.neo4j.kernel.AvailabilityGuard; import org.neo4j.kernel.AvailabilityGuard;
import org.neo4j.kernel.NeoStoreDataSource;
import org.neo4j.kernel.configuration.Config; import org.neo4j.kernel.configuration.Config;
import org.neo4j.kernel.impl.transaction.state.DataSourceManager;
import org.neo4j.kernel.impl.transaction.state.NeoStoreFileListing; import org.neo4j.kernel.impl.transaction.state.NeoStoreFileListing;
import org.neo4j.kernel.lifecycle.LifecycleAdapter; import org.neo4j.kernel.lifecycle.LifecycleAdapter;
import org.neo4j.logging.Log; import org.neo4j.logging.Log;
Expand All @@ -36,18 +36,18 @@
class PageCacheWarmerKernelExtension extends LifecycleAdapter class PageCacheWarmerKernelExtension extends LifecycleAdapter
{ {
private final AvailabilityGuard availabilityGuard; private final AvailabilityGuard availabilityGuard;
private final DataSourceManager dataSourceManager; private final NeoStoreDataSource dataSource;
private final Config config; private final Config config;
private final PageCacheWarmer pageCacheWarmer; private final PageCacheWarmer pageCacheWarmer;
private final WarmupAvailabilityListener availabilityListener; private final WarmupAvailabilityListener availabilityListener;
private volatile boolean started; private volatile boolean started;


PageCacheWarmerKernelExtension( PageCacheWarmerKernelExtension(
JobScheduler scheduler, AvailabilityGuard availabilityGuard, PageCache pageCache, FileSystemAbstraction fs, JobScheduler scheduler, AvailabilityGuard availabilityGuard, PageCache pageCache, FileSystemAbstraction fs,
DataSourceManager dataSourceManager, Log log, PageCacheWarmerMonitor monitor, Config config ) NeoStoreDataSource dataSource, Log log, PageCacheWarmerMonitor monitor, Config config )
{ {
this.availabilityGuard = availabilityGuard; this.availabilityGuard = availabilityGuard;
this.dataSourceManager = dataSourceManager; this.dataSource = dataSource;
this.config = config; this.config = config;
pageCacheWarmer = new PageCacheWarmer( fs, pageCache, scheduler ); pageCacheWarmer = new PageCacheWarmer( fs, pageCache, scheduler );
availabilityListener = new WarmupAvailabilityListener( scheduler, pageCacheWarmer, config, log, monitor ); availabilityListener = new WarmupAvailabilityListener( scheduler, pageCacheWarmer, config, log, monitor );
Expand Down Expand Up @@ -79,6 +79,6 @@ public void stop() throws Throwable


private NeoStoreFileListing getNeoStoreFileListing() private NeoStoreFileListing getNeoStoreFileListing()
{ {
return dataSourceManager.getDataSource().getDependencyResolver().resolveDependency( NeoStoreFileListing.class ); return dataSource.getDependencyResolver().resolveDependency( NeoStoreFileListing.class );
} }
} }
Expand Up @@ -26,12 +26,12 @@
import org.neo4j.io.fs.FileSystemAbstraction; import org.neo4j.io.fs.FileSystemAbstraction;
import org.neo4j.io.pagecache.PageCache; import org.neo4j.io.pagecache.PageCache;
import org.neo4j.kernel.AvailabilityGuard; import org.neo4j.kernel.AvailabilityGuard;
import org.neo4j.kernel.NeoStoreDataSource;
import org.neo4j.kernel.configuration.Config; import org.neo4j.kernel.configuration.Config;
import org.neo4j.kernel.extension.ExtensionType; import org.neo4j.kernel.extension.ExtensionType;
import org.neo4j.kernel.extension.KernelExtensionFactory; import org.neo4j.kernel.extension.KernelExtensionFactory;
import org.neo4j.kernel.impl.logging.LogService; import org.neo4j.kernel.impl.logging.LogService;
import org.neo4j.kernel.impl.spi.KernelContext; import org.neo4j.kernel.impl.spi.KernelContext;
import org.neo4j.kernel.impl.transaction.state.DataSourceManager;
import org.neo4j.kernel.lifecycle.Lifecycle; import org.neo4j.kernel.lifecycle.Lifecycle;
import org.neo4j.kernel.monitoring.Monitors; import org.neo4j.kernel.monitoring.Monitors;
import org.neo4j.logging.Log; import org.neo4j.logging.Log;
Expand All @@ -51,7 +51,7 @@ public interface Dependencies


FileSystemAbstraction fileSystemAbstraction(); FileSystemAbstraction fileSystemAbstraction();


DataSourceManager getDataSourceManager(); NeoStoreDataSource getDataSource();


LogService logService(); LogService logService();


Expand All @@ -73,7 +73,7 @@ public Lifecycle newInstance( KernelContext context, Dependencies deps )
PageCache pageCache = deps.pageCache(); PageCache pageCache = deps.pageCache();
FileSystemAbstraction fs = deps.fileSystemAbstraction(); FileSystemAbstraction fs = deps.fileSystemAbstraction();
LogService logService = deps.logService(); LogService logService = deps.logService();
DataSourceManager dataSourceManager = deps.getDataSourceManager(); NeoStoreDataSource dataSourceManager = deps.getDataSource();
Log log = logService.getInternalLog( PageCacheWarmer.class ); Log log = logService.getInternalLog( PageCacheWarmer.class );
PageCacheWarmerMonitor monitor = deps.monitors().newMonitor( PageCacheWarmerMonitor.class ); PageCacheWarmerMonitor monitor = deps.monitors().newMonitor( PageCacheWarmerMonitor.class );
Config config = deps.config(); Config config = deps.config();
Expand Down

0 comments on commit 4c2b0f6

Please sign in to comment.