private NeoStores getNeoStores() { RecordStorageEngine recordStorageEngine = embeddedDatabase.resolveDependency( RecordStorageEngine.class ); return recordStorageEngine.testAccessNeoStores(); }
private NeoStores resolveNeoStores() { DependencyResolver resolver = db.getDependencyResolver(); RecordStorageEngine storageEngine = resolver.resolveDependency( RecordStorageEngine.class ); return storageEngine.testAccessNeoStores(); }
private NeoStores neoStores() { return ( (GraphDatabaseAPI) db ).getDependencyResolver().resolveDependency( RecordStorageEngine.class ) .testAccessNeoStores(); }
private static NeoStores getNeoStores( GraphDatabaseService db ) { DependencyResolver dependencyResolver = getDependencyResolver( db ); return dependencyResolver.resolveDependency( RecordStorageEngine.class, DependencyResolver.SelectionStrategy.ONLY ).testAccessNeoStores(); }
private NeoStores neoStores() { return ( (GraphDatabaseAPI) db ).getDependencyResolver().resolveDependency( RecordStorageEngine.class ) .testAccessNeoStores(); }
Worker( int id, AtomicBoolean end, RecordStorageEngine storageEngine, int batchSize, IndexProxy index ) { this.id = id; this.end = end; this.storageEngine = storageEngine; this.batchSize = batchSize; this.index = index; NeoStores neoStores = this.storageEngine.testAccessNeoStores(); this.nodeIds = neoStores.getNodeStore(); this.commandCreationContext = storageEngine.allocateCommandCreationContext(); }
protected PropertyStore propertyStore() { return graphDb.getDependencyResolver().resolveDependency( RecordStorageEngine.class ) .testAccessNeoStores().getPropertyStore(); } }
private CountsTracker getTracker() { return ((GraphDatabaseAPI) db).getDependencyResolver().resolveDependency( RecordStorageEngine.class ) .testAccessNeoStores().getCounts(); }
private NeoStores flipToNeoStores() { return dbRule.getGraphDatabaseAPI().getDependencyResolver().resolveDependency( RecordStorageEngine.class ).testAccessNeoStores(); }
private static Map<IdType,Long> getHighIds( GraphDatabaseAPI db ) { final Map<IdType,Long> highIds = new HashMap<>(); NeoStores neoStores = db.getDependencyResolver().resolveDependency( RecordStorageEngine.class ).testAccessNeoStores(); Visitor<CommonAbstractStore,RuntimeException> visitor = store -> { highIds.put( store.getIdType(), store.getHighId() ); return true; }; neoStores.visitStore( visitor ); return highIds; }
@Override public void indexPopulationScanComplete() { monitorCalled.set( true ); db.getDependencyResolver().resolveDependency( RecordStorageEngine.class ).testAccessNeoStores() .getSchemaStore().flush(); storeInNeedOfRecovery[0] = fs.snapshot(); } } );
private void shiftHighId( GraphDatabaseAPI db ) { RecordStorageEngine storageEngine = db.getDependencyResolver().resolveDependency( RecordStorageEngine.class ); NeoStores neoStores = storageEngine.testAccessNeoStores(); neoStores.getRelationshipTypeTokenStore().setHighId( Short.MAX_VALUE - RELATIONSHIP_COUNT / 2 ); }
private void flushNeoStoreOnly() { NeoStores neoStores = ((GraphDatabaseAPI) db).getDependencyResolver() .resolveDependency( RecordStorageEngine.class ).testAccessNeoStores(); MetaDataStore metaDataStore = neoStores.getMetaDataStore(); metaDataStore.flush(); }
@Test( timeout = 30_000 ) public void obtainCountsStoreResetterAfterFailedTransaction() throws Throwable { RecordStorageEngine engine = buildRecordStorageEngine(); Exception applicationError = executeFailingTransaction( engine ); assertNotNull( applicationError ); CountsTracker countsStore = engine.testAccessNeoStores().getCounts(); // possible to obtain a resetting updater that internally has a write lock on the counts store try ( CountsAccessor.Updater updater = countsStore.reset( 0 ) ) { assertNotNull( updater ); } }
Applier() { database = (GraphDatabaseAPI) new TestGraphDatabaseFactory() .newEmbeddedDatabaseBuilder( directory.databaseDir() ) .setConfig( "dbms.backup.enabled", "false" ) .newGraphDatabase(); DependencyResolver dependencyResolver = database.getDependencyResolver(); commitProcess = new TransactionRepresentationCommitProcess( dependencyResolver.resolveDependency( TransactionAppender.class ), dependencyResolver.resolveDependency( StorageEngine.class ) ); transactionIdStore = database.getDependencyResolver().resolveDependency( TransactionIdStore.class ); neoStores = database.getDependencyResolver().resolveDependency( RecordStorageEngine.class ) .testAccessNeoStores(); }
@BeforeClass public static void initStorage() throws Exception { try ( Transaction transaction = db.beginTx() ) { TokenWrite tokenWrite = getTransaction().tokenWrite(); tokenWrite.propertyKeyGetOrCreateForName( PROP1 ); tokenWrite.propertyKeyGetOrCreateForName( PROP2 ); tokenWrite.labelGetOrCreateForName( LABEL1 ); tokenWrite.labelGetOrCreateForName( LABEL2 ); tokenWrite.relationshipTypeGetOrCreateForName( TYPE1 ); transaction.success(); } SchemaStore schemaStore = resolveDependency( RecordStorageEngine.class ).testAccessNeoStores().getSchemaStore(); storage = new SchemaStorage( schemaStore ); }
private void initializeStores( DatabaseLayout databaseLayout, Map<String,String> additionalConfig ) throws IOException { Dependencies dependencies = new Dependencies(); dependencies.satisfyDependency( Config.defaults( additionalConfig ) ); ds = dsRule.getDataSource( databaseLayout, fs.get(), pageCache, dependencies ); ds.start(); NeoStores neoStores = ds.getDependencyResolver() .resolveDependency( RecordStorageEngine.class ).testAccessNeoStores(); pStore = neoStores.getPropertyStore(); rtStore = neoStores.getRelationshipTypeTokenStore(); relStore = neoStores.getRelationshipStore(); nodeStore = neoStores.getNodeStore(); storageReader = ds.getDependencyResolver().resolveDependency( StorageEngine.class ).newReader(); }
@Test void skipMigrationIfFormatSpecifiedInConfig() { GraphDatabaseService database = startDatabaseWithFormatUnspecifiedUpgrade( storeDir, StandardV3_2.NAME ); try ( Transaction transaction = database.beginTx() ) { Node node = database.createNode(); node.setProperty( "a", "b" ); transaction.success(); } database.shutdown(); GraphDatabaseAPI nonUpgradedStore = (GraphDatabaseAPI) startDatabaseWithFormatUnspecifiedUpgrade( storeDir, StandardV3_2.NAME ); RecordStorageEngine storageEngine = nonUpgradedStore.getDependencyResolver().resolveDependency( RecordStorageEngine.class ); assertEquals( StandardV3_2.NAME, storageEngine.testAccessNeoStores().getRecordFormats().name() ); nonUpgradedStore.shutdown(); }
@Test void skipMigrationIfStoreFormatNotSpecifiedButIsAvailableInRuntime() { GraphDatabaseService database = startDatabaseWithFormatUnspecifiedUpgrade( storeDir, StandardV3_2.NAME ); try ( Transaction transaction = database.beginTx() ) { Node node = database.createNode(); node.setProperty( "a", "b" ); transaction.success(); } database.shutdown(); GraphDatabaseAPI nonUpgradedStore = (GraphDatabaseAPI) new GraphDatabaseFactory() .newEmbeddedDatabase( storeDir ); RecordStorageEngine storageEngine = nonUpgradedStore.getDependencyResolver().resolveDependency( RecordStorageEngine.class ); assertEquals( StandardV3_2.NAME, storageEngine.testAccessNeoStores().getRecordFormats().name() ); nonUpgradedStore.shutdown(); }
@Test public void differentChunksHaveDifferentCursors() { GraphDatabaseAPI database = (GraphDatabaseAPI) new TestGraphDatabaseFactory().newEmbeddedDatabase( testDirectory.storeDir() ); try { RecordStorageEngine recordStorageEngine = database.getDependencyResolver().resolveDependency( RecordStorageEngine.class ); NeoStores neoStores = recordStorageEngine.testAccessNeoStores(); RecordStorageReader storageReader = new RecordStorageReader( neoStores ); TestStoreScanChunk scanChunk1 = new TestStoreScanChunk( storageReader, false ); TestStoreScanChunk scanChunk2 = new TestStoreScanChunk( storageReader, false ); assertNotSame( scanChunk1.getCursor(), scanChunk2.getCursor() ); assertNotSame( scanChunk1.getStorePropertyCursor(), scanChunk2.getStorePropertyCursor() ); } finally { database.shutdown(); } }