//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void batchInserterShouldUseConfiguredIndexProvider() throws Exception
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
        public virtual void BatchInserterShouldUseConfiguredIndexProvider()
        {
            Config        config   = Config.defaults(stringMap(default_schema_provider.name(), _schemaIndex.providerName()));
            BatchInserter inserter = NewBatchInserter(config);

            inserter.CreateDeferredSchemaIndex(TestLabels.LABEL_ONE).on("key").create();
            inserter.Shutdown();
            GraphDatabaseService db = GraphDatabaseService(config);

            AwaitIndexesOnline(db);
            try
            {
                using (Transaction tx = Db.beginTx())
                {
                    DependencyResolver             dependencyResolver             = (( GraphDatabaseAPI )db).DependencyResolver;
                    ThreadToStatementContextBridge threadToStatementContextBridge = dependencyResolver.ResolveDependency(typeof(ThreadToStatementContextBridge));
                    KernelTransaction kernelTransaction = threadToStatementContextBridge.GetKernelTransactionBoundToThisThread(true);
                    TokenRead         tokenRead         = kernelTransaction.TokenRead();
                    SchemaRead        schemaRead        = kernelTransaction.SchemaRead();
                    int            labelId    = tokenRead.NodeLabel(TestLabels.LABEL_ONE.name());
                    int            propertyId = tokenRead.PropertyKey("key");
                    IndexReference index      = schemaRead.Index(labelId, propertyId);
                    assertTrue(UnexpectedIndexProviderMessage(index), _schemaIndex.providerName().contains(index.ProviderKey()));
                    assertTrue(UnexpectedIndexProviderMessage(index), _schemaIndex.providerName().contains(index.ProviderVersion()));
                    tx.Success();
                }
            }
            finally
            {
                Db.shutdown();
            }
        }
Beispiel #2
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
//ORIGINAL LINE: private void nativeIndexMustLogCrashPointerCleanupDuringRecovery(org.neo4j.graphdb.factory.GraphDatabaseSettings.SchemaIndex setting, String... subTypes) throws Exception
        private void NativeIndexMustLogCrashPointerCleanupDuringRecovery(GraphDatabaseSettings.SchemaIndex setting, params string[] subTypes)
        {
            // given
            SetTestConfig(GraphDatabaseSettings.default_schema_provider, setting.providerName());
            DirtyDatabase();

            // when
            AssertableLogProvider logProvider = new AssertableLogProvider(true);

            _factory.InternalLogProvider = logProvider;
            StartDatabase().shutdown();

            // then
            IList <Matcher <string> > matchers = new List <Matcher <string> >();

            foreach (string subType in subTypes)
            {
                matchers.Add(IndexRecoveryLogMatcher("Schema index cleanup job registered", subType));
                matchers.Add(IndexRecoveryLogMatcher("Schema index cleanup job started", subType));
                matchers.Add(IndexRecoveryFinishedLogMatcher(subType));
                matchers.Add(IndexRecoveryLogMatcher("Schema index cleanup job closed", subType));
            }
            AssertableLogProvider.MessageMatcher messageMatcher = logProvider.RawMessageMatcher();
            matchers.ForEach(messageMatcher.assertContainsSingle);
        }
Beispiel #3
0
        private void CreateIndexInIsolatedDbInstance(File storeDir, GraphDatabaseSettings.SchemaIndex index)
        {
            GraphDatabaseService db = (new TestGraphDatabaseFactory()).newEmbeddedDatabaseBuilder(storeDir).setConfig(GraphDatabaseSettings.default_schema_provider, index.providerName()).newGraphDatabase();

            try
            {
                Label  label = Label.label("Label-" + index.providerName());
                string key   = "key";
                using (Transaction tx = Db.beginTx())
                {
                    for (int i = 0; i < 100; i++)
                    {
                        Db.createNode(label).setProperty(key, i);
                    }
                    tx.Success();
                }
                using (Transaction tx = Db.beginTx())
                {
                    Db.schema().indexFor(label).on(key).create();
                    tx.Success();
                }
                using (Transaction tx = Db.beginTx())
                {
                    Db.schema().awaitIndexesOnline(1, MINUTES);
                    tx.Success();
                }
            }
            finally
            {
                Db.shutdown();
            }
        }
 private GraphDatabaseService NewDb()
 {
     return(_factory.newEmbeddedDatabaseBuilder(StoreDir.absolutePath()).setConfig(GraphDatabaseSettings.default_schema_provider, SchemaIndex.providerName()).newGraphDatabase());
 }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void shouldUseConfiguredIndexProvider() throws org.neo4j.internal.kernel.api.exceptions.schema.IndexNotFoundKernelException
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
        public virtual void ShouldUseConfiguredIndexProvider()
        {
            // given
            GraphDatabaseService db = _dbBuilder.setConfig(default_schema_provider, Provider == null ? null : Provider.providerName()).newGraphDatabase();

            try
            {
                // when
                CreateIndex(db);

                // then
                AssertIndexProvider(db, Provider == null ? GenericNativeIndexProvider.DESCRIPTOR.name() : Provider.providerName());
            }
            finally
            {
                Db.shutdown();
            }
        }
Beispiel #6
0
        private void Setup(GraphDatabaseSettings.SchemaIndex schemaIndex, System.Action <GraphDatabaseService> additionalSetup)
        {
            File dataDir            = _testDirectory.storeLayout().storeDirectory();
            GraphDatabaseService db = (new GraphDatabaseFactory()).newEmbeddedDatabaseBuilder(dataDir).setConfig(GraphDatabaseSettings.default_schema_provider, schemaIndex.providerName()).newGraphDatabase();

            try
            {
                CreateAnIndex(db);
                additionalSetup(db);
            }
            finally
            {
                Db.shutdown();
            }
        }
Beispiel #7
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Before public void setUp()
        public virtual void SetUp()
        {
            EphemeralFileSystemAbstraction fileSystem = FileSystemRule.get();

            _database = (new TestGraphDatabaseFactory()).setFileSystem(fileSystem).newImpermanentDatabaseBuilder().setConfig(GraphDatabaseSettings.default_schema_provider, SchemaIndex.providerName()).newGraphDatabase();
            CreateData(_database, 100);
        }