コード例 #1
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void dropShouldDeleteEntireIndexFolder()
        public virtual void DropShouldDeleteEntireIndexFolder()
        {
            // given
            File root = Storage.directory().directory("root");
            IndexDirectoryStructure directoryStructure = IndexDirectoryStructure.directoriesByProvider(root).forProvider(GenericNativeIndexProvider.Descriptor);
            long indexId                    = 8;
            File indexDirectory             = directoryStructure.DirectoryForIndex(indexId);
            StoreIndexDescriptor descriptor = IndexDescriptorFactory.forSchema(SchemaDescriptorFactory.forLabel(1, 1)).withId(indexId);
            IndexSpecificSpaceFillingCurveSettingsCache spatialSettings = mock(typeof(IndexSpecificSpaceFillingCurveSettingsCache));
            PageCache             pageCache        = Storage.pageCache();
            FileSystemAbstraction fs               = Storage.fileSystem();
            File          indexFile                = new File(indexDirectory, "my-index");
            GenericLayout layout                   = new GenericLayout(1, spatialSettings);
            RecoveryCleanupWorkCollector immediate = immediate();
            IndexDropAction             dropAction = new FileSystemIndexDropAction(fs, directoryStructure);
            GenericNativeIndexPopulator populator  = new GenericNativeIndexPopulator(pageCache, fs, indexFile, layout, EMPTY, descriptor, spatialSettings, directoryStructure, mock(typeof(SpaceFillingCurveConfiguration)), dropAction, false);

            populator.Create();

            // when
            assertTrue(fs.ListFiles(indexDirectory).Length > 0);
            populator.Drop();

            // then
            assertFalse(fs.FileExists(indexDirectory));
        }
コード例 #2
0
        protected internal override IndexProvider CreateIndexProvider(PageCache pageCache, FileSystemAbstraction fs, File graphDbDir)
        {
            IndexProvider.Monitor monitor = IndexProvider.Monitor_Fields.EMPTY;
            Config          config        = Config.defaults(stringMap(default_schema_provider.name(), NATIVE10.providerName()));
            OperationalMode mode          = OperationalMode.single;
            RecoveryCleanupWorkCollector recoveryCleanupWorkCollector = RecoveryCleanupWorkCollector.immediate();

            return(NativeLuceneFusionIndexProviderFactory10.Create(pageCache, graphDbDir, fs, monitor, config, mode, recoveryCleanupWorkCollector));
        }
コード例 #3
0
        public override IndexProvider NewInstance(KernelContext context, DEPENDENCIES dependencies)
        {
            PageCache             pageCache   = dependencies.PageCache();
            File                  databaseDir = context.Directory();
            FileSystemAbstraction fs          = dependencies.FileSystem();
            Log      log      = dependencies.LogService.InternalLogProvider.getLog(LoggingClass());
            Monitors monitors = dependencies.Monitors();

            monitors.AddMonitorListener(new LoggingMonitor(log), DescriptorString());
            IndexProvider.Monitor monitor   = monitors.NewMonitor(typeof(IndexProvider.Monitor), DescriptorString());
            Config          config          = dependencies.Config;
            OperationalMode operationalMode = context.DatabaseInfo().OperationalMode;
            RecoveryCleanupWorkCollector recoveryCleanupWorkCollector = dependencies.RecoveryCleanupWorkCollector();

            return(InternalCreate(pageCache, databaseDir, fs, monitor, config, operationalMode, recoveryCleanupWorkCollector));
        }
コード例 #4
0
 internal static TemporalIndexProvider TemporalProvider(PageCache pageCache, FileSystemAbstraction fs, IndexDirectoryStructure.Factory directoryStructure, IndexProvider.Monitor monitor, RecoveryCleanupWorkCollector recoveryCleanupWorkCollector, bool readOnly)
 {
     return(new TemporalIndexProvider(pageCache, fs, directoryStructure, monitor, recoveryCleanupWorkCollector, readOnly));
 }
コード例 #5
0
 internal static NumberIndexProvider NumberProvider(PageCache pageCache, FileSystemAbstraction fs, IndexDirectoryStructure.Factory childDirectoryStructure, IndexProvider.Monitor monitor, RecoveryCleanupWorkCollector recoveryCleanupWorkCollector, bool readOnly)
 {
     return(new NumberIndexProvider(pageCache, fs, childDirectoryStructure, monitor, recoveryCleanupWorkCollector, readOnly));
 }
コード例 #6
0
 internal ExtendedRecordStorageEngine(DatabaseLayout databaseLayout, Config config, PageCache pageCache, FileSystemAbstraction fs, LogProvider logProvider, LogProvider userLogProvider, TokenHolders tokenHolders, SchemaState schemaState, ConstraintSemantics constraintSemantics, JobScheduler scheduler, TokenNameLookup tokenNameLookup, LockService lockService, IndexProviderMap indexProviderMap, IndexingService.Monitor indexingServiceMonitor, DatabaseHealth databaseHealth, ExplicitIndexProvider explicitIndexProviderLookup, IndexConfigStore indexConfigStore, IdOrderingQueue explicitIndexTransactionOrdering, IdGeneratorFactory idGeneratorFactory, IdController idController, System.Func <BatchTransactionApplierFacade, BatchTransactionApplierFacade> transactionApplierTransformer, Monitors monitors, RecoveryCleanupWorkCollector recoveryCleanupWorkCollector, OperationalMode operationalMode) : base(databaseLayout, config, pageCache, fs, logProvider, userLogProvider, tokenHolders, schemaState, constraintSemantics, scheduler, tokenNameLookup, lockService, indexProviderMap, indexingServiceMonitor, databaseHealth, explicitIndexProviderLookup, indexConfigStore, explicitIndexTransactionOrdering, idGeneratorFactory, idController, monitors, recoveryCleanupWorkCollector, operationalMode, EmptyVersionContextSupplier.EMPTY)
 {
     this.TransactionApplierTransformer = transactionApplierTransformer;
 }
コード例 #7
0
        private RecordStorageEngine Get(FileSystemAbstraction fs, PageCache pageCache, IndexProvider indexProvider, DatabaseHealth databaseHealth, DatabaseLayout databaseLayout, System.Func <BatchTransactionApplierFacade, BatchTransactionApplierFacade> transactionApplierTransformer, Monitors monitors, LockService lockService)
        {
            IdGeneratorFactory    idGeneratorFactory          = new EphemeralIdGenerator.Factory();
            ExplicitIndexProvider explicitIndexProviderLookup = mock(typeof(ExplicitIndexProvider));

            when(explicitIndexProviderLookup.AllIndexProviders()).thenReturn(Iterables.empty());
            IndexConfigStore indexConfigStore = new IndexConfigStore(databaseLayout, fs);
            JobScheduler     scheduler        = _life.add(createScheduler());
            Config           config           = Config.defaults(GraphDatabaseSettings.default_schema_provider, indexProvider.ProviderDescriptor.name());

            Dependencies dependencies = new Dependencies();

            dependencies.SatisfyDependency(indexProvider);

            BufferingIdGeneratorFactory bufferingIdGeneratorFactory = new BufferingIdGeneratorFactory(idGeneratorFactory, Org.Neo4j.Kernel.impl.store.id.IdReuseEligibility_Fields.Always, new CommunityIdTypeConfigurationProvider());
            DefaultIndexProviderMap     indexProviderMap            = new DefaultIndexProviderMap(dependencies, config);
            NullLogProvider             nullLogProvider             = NullLogProvider.Instance;

            _life.add(indexProviderMap);
            return(_life.add(new ExtendedRecordStorageEngine(databaseLayout, config, pageCache, fs, nullLogProvider, nullLogProvider, mockedTokenHolders(), mock(typeof(SchemaState)), new StandardConstraintSemantics(), scheduler, mock(typeof(TokenNameLookup)), lockService, indexProviderMap, IndexingService.NO_MONITOR, databaseHealth, explicitIndexProviderLookup, indexConfigStore, new SynchronizedArrayIdOrderingQueue(), idGeneratorFactory, new BufferedIdController(bufferingIdGeneratorFactory, scheduler), transactionApplierTransformer, monitors, RecoveryCleanupWorkCollector.immediate(), OperationalMode.single)));
        }
コード例 #8
0
        public static FusionIndexProvider Create(PageCache pageCache, File databaseDirectory, FileSystemAbstraction fs, IndexProvider.Monitor monitor, Config config, OperationalMode operationalMode, RecoveryCleanupWorkCollector recoveryCleanupWorkCollector)
        {
            IndexDirectoryStructure.Factory childDirectoryStructure = SubProviderDirectoryStructure(databaseDirectory);
            bool readOnly           = IndexProviderFactoryUtil.IsReadOnly(config, operationalMode);
            bool archiveFailedIndex = config.Get(GraphDatabaseSettings.archive_failed_index);

            NumberIndexProvider   number   = IndexProviderFactoryUtil.NumberProvider(pageCache, fs, childDirectoryStructure, monitor, recoveryCleanupWorkCollector, readOnly);
            SpatialIndexProvider  spatial  = IndexProviderFactoryUtil.SpatialProvider(pageCache, fs, childDirectoryStructure, monitor, recoveryCleanupWorkCollector, readOnly, config);
            TemporalIndexProvider temporal = IndexProviderFactoryUtil.TemporalProvider(pageCache, fs, childDirectoryStructure, monitor, recoveryCleanupWorkCollector, readOnly);
            LuceneIndexProvider   lucene   = IndexProviderFactoryUtil.LuceneProvider(fs, childDirectoryStructure, monitor, config, operationalMode);

            return(new FusionIndexProvider(EMPTY, number, spatial, temporal, lucene, new FusionSlotSelector10(), Descriptor, directoriesByProvider(databaseDirectory), fs, archiveFailedIndex));
        }
コード例 #9
0
 protected internal override IndexProvider InternalCreate(PageCache pageCache, File storeDir, FileSystemAbstraction fs, IndexProvider.Monitor monitor, Config config, OperationalMode operationalMode, RecoveryCleanupWorkCollector recoveryCleanupWorkCollector)
 {
     return(Create(pageCache, storeDir, fs, monitor, config, operationalMode, recoveryCleanupWorkCollector));
 }
コード例 #10
0
 internal NumberIndexAccessor(PageCache pageCache, FileSystemAbstraction fs, File storeFile, IndexLayout <NumberIndexKey, NativeIndexValue> layout, RecoveryCleanupWorkCollector recoveryCleanupWorkCollector, IndexProvider.Monitor monitor, StoreIndexDescriptor descriptor, bool readOnly) : base(pageCache, fs, storeFile, layout, monitor, descriptor, NO_HEADER_WRITER, readOnly)
 {
     instantiateTree(recoveryCleanupWorkCollector, HeaderWriter);
 }
コード例 #11
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @SuppressWarnings("unchecked") public static org.neo4j.kernel.extension.DatabaseKernelExtensions instantiateKernelExtensions(java.io.File databaseDirectory, org.neo4j.io.fs.FileSystemAbstraction fileSystem, org.neo4j.kernel.configuration.Config config, org.neo4j.logging.internal.LogService logService, org.neo4j.io.pagecache.PageCache pageCache, org.neo4j.scheduler.JobScheduler jobScheduler, org.neo4j.index.internal.gbptree.RecoveryCleanupWorkCollector recoveryCollector, org.neo4j.kernel.impl.factory.DatabaseInfo databaseInfo, org.neo4j.kernel.monitoring.Monitors monitors, org.neo4j.kernel.impl.core.TokenHolders tokenHolders)
        public static DatabaseKernelExtensions InstantiateKernelExtensions(File databaseDirectory, FileSystemAbstraction fileSystem, Config config, LogService logService, PageCache pageCache, JobScheduler jobScheduler, RecoveryCleanupWorkCollector recoveryCollector, DatabaseInfo databaseInfo, Monitors monitors, TokenHolders tokenHolders)
        {
            Dependencies deps = new Dependencies();

            deps.SatisfyDependencies(fileSystem, config, logService, pageCache, recoveryCollector, monitors, jobScheduler, tokenHolders);
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @SuppressWarnings("rawtypes") Iterable kernelExtensions = org.neo4j.helpers.Service.load(org.neo4j.kernel.extension.KernelExtensionFactory.class);
            System.Collections.IEnumerable kernelExtensions = Service.load(typeof(KernelExtensionFactory));
            KernelContext kernelContext = new SimpleKernelContext(databaseDirectory, databaseInfo, deps);

            return(new DatabaseKernelExtensions(kernelContext, kernelExtensions, deps, KernelExtensionFailureStrategies.ignore()));
        }
コード例 #12
0
 private NativeLabelScanStore GetNativeLabelScanStore(DatabaseLayout databaseLayout, bool readOnly)
 {
     return(new NativeLabelScanStore(_pageCache, databaseLayout, _fileSystem, Org.Neo4j.Kernel.Impl.Api.scan.FullStoreChangeStream_Fields.Empty, readOnly, new Monitors(), RecoveryCleanupWorkCollector.ignore()));
 }
コード例 #13
0
ファイル: BatchingNeoStores.cs プロジェクト: Neo4Net/Neo4Net
 private void InstantiateKernelExtensions()
 {
     _life = new LifeSupport();
     _life.start();
     _labelScanStore = new NativeLabelScanStore(_pageCache, _databaseLayout, _fileSystem, Org.Neo4j.Kernel.Impl.Api.scan.FullStoreChangeStream_Fields.Empty, false, new Monitors(), RecoveryCleanupWorkCollector.immediate());
     _life.add(_labelScanStore);
 }
コード例 #14
0
        public static GenericNativeIndexProvider Create(PageCache pageCache, File storeDir, FileSystemAbstraction fs, IndexProvider.Monitor monitor, Config config, OperationalMode mode, RecoveryCleanupWorkCollector recoveryCleanupWorkCollector)
        {
            IndexDirectoryStructure.Factory directoryStructure = directoriesByProvider(storeDir);
            bool readOnly = config.Get(GraphDatabaseSettings.read_only) && (OperationalMode.single == mode);

            return(new GenericNativeIndexProvider(directoryStructure, pageCache, fs, monitor, recoveryCleanupWorkCollector, readOnly, config));
        }
コード例 #15
0
        private NativeLabelScanStore GetNativeLabelScanStore(DatabaseLayout migrationDirectoryStructure, ProgressReporter progressReporter, NeoStores neoStores)
        {
            NeoStoreIndexStoreView neoStoreIndexStoreView = new NeoStoreIndexStoreView(NO_LOCK_SERVICE, neoStores);

            return(new NativeLabelScanStore(_pageCache, migrationDirectoryStructure, _fileSystem, new MonitoredFullLabelStream(neoStoreIndexStoreView, progressReporter), false, new Monitors(), RecoveryCleanupWorkCollector.immediate()));
        }
コード例 #16
0
 protected internal abstract IndexProvider InternalCreate(PageCache pageCache, File storeDir, FileSystemAbstraction fs, IndexProvider.Monitor monitor, Config config, OperationalMode operationalMode, RecoveryCleanupWorkCollector recoveryCleanupWorkCollector);