@Override public StoreId getStoreId() { return neoStores.getMetaDataStore().getStoreId(); } }
@Override public long getGraphPropertyReference() { return neoStores.getMetaDataStore().getGraphNextProp(); }
@Override void dump( NeoStores source, Logger logger ) { source.getMetaDataStore().logRecords( logger ); } };
public long getLastCommittedTransactionId() { return neoStores.getMetaDataStore().getLastCommittedTransactionId(); }
@Override public boolean visitNeoStoreCommand( Command.NeoStoreCommand command ) { neoStores.getMetaDataStore().setGraphNextProp( selectRecordByCommandVersion( command ).getNextProp() ); return false; }
@Override public RecordReference<NeoStoreRecord> graph() { return new DirectRecordReference<>( access.getRawNeoStores().getMetaDataStore().graphPropertyRecord(), this ); }
public static void recomputeCounts( NeoStores stores, PageCache pageCache, DatabaseLayout databaseLayout ) { MetaDataStore metaDataStore = stores.getMetaDataStore(); CountsTracker counts = stores.getCounts(); try ( CountsAccessor.Updater updater = counts.reset( metaDataStore.getLastCommittedTransactionId() ) ) { new CountsComputer( stores, pageCache, databaseLayout ).initialize( updater ); } }
public void satisfyDependencies( DependencySatisfier satisfier ) { satisfier.satisfyDependency( explicitIndexApplierLookup ); satisfier.satisfyDependency( cacheAccess ); satisfier.satisfyDependency( indexProviderMap ); satisfier.satisfyDependency( integrityValidator ); satisfier.satisfyDependency( labelScanStore ); satisfier.satisfyDependency( indexingService ); satisfier.satisfyDependency( neoStores.getMetaDataStore() ); satisfier.satisfyDependency( indexStoreView ); }
@Test public void shouldSetLatestConstraintRule() throws Exception { // Given SchemaRecord beforeRecords = serialize( rule, id, true, true); SchemaRecord afterRecords = serialize( rule, id, true, false); when( neoStores.getSchemaStore() ).thenReturn( schemaStore ); when( neoStores.getMetaDataStore() ).thenReturn( metaDataStore ); ConstraintRule schemaRule = ConstraintRule.constraintRule( id, ConstraintDescriptorFactory.uniqueForLabel( labelId, propertyKey ), 0 ); // WHEN visitSchemaRuleCommand( storeApplier, new SchemaRuleCommand( beforeRecords, afterRecords, schemaRule ) ); // THEN verify( schemaStore ).updateRecord( Iterables.first( afterRecords ) ); verify( metaDataStore ).setLatestConstraintIntroducingTx( txId ); }
@Test( expected = StoreNotFoundException.class ) public void shouldThrowWhenOpeningNonExistingNeoStores() { try ( NeoStores neoStores = storeFactory( Config.defaults() ).openAllNeoStores() ) { neoStores.getMetaDataStore(); } }
CountsComputer( NeoStores stores, PageCache pageCache, DatabaseLayout databaseLayout ) { this( stores.getMetaDataStore().getLastCommittedTransactionId(), stores.getNodeStore(), stores.getRelationshipStore(), (int) stores.getLabelTokenStore().getHighId(), (int) stores.getRelationshipTypeTokenStore().getHighId(), NumberArrayFactory.auto( pageCache, databaseLayout.databaseDirectory(), true, NumberArrayFactory.NO_MONITOR ) ); }
private void flushNeoStoreOnly() { NeoStores neoStores = ((GraphDatabaseAPI) db).getDependencyResolver() .resolveDependency( RecordStorageEngine.class ).testAccessNeoStores(); MetaDataStore metaDataStore = neoStores.getMetaDataStore(); metaDataStore.flush(); }
@Test public void shouldHaveSameCreationTimeAndUpgradeTimeOnStartup() { // When neoStores = storeFactory( Config.defaults() ).openAllNeoStores( true ); MetaDataStore metaDataStore = neoStores.getMetaDataStore(); // Then assertThat( metaDataStore.getUpgradeTime(), equalTo( metaDataStore.getCreationTime() ) ); }
@Test public void impossibleToGetStoreFromClosedNeoStoresContainer() { Config config = Config.defaults(); StoreFactory sf = getStoreFactory( config, databaseLayout, fs.get(), NullLogProvider.getInstance() ); NeoStores neoStores = sf.openAllNeoStores( true ); assertNotNull( neoStores.getMetaDataStore() ); neoStores.close(); exception.expect( IllegalStateException.class ); exception.expectMessage( "Specified store was already closed."); neoStores.getMetaDataStore(); }
@Test public void shouldInitializeTheTxIdToOne() { StoreFactory factory = getStoreFactory( Config.defaults(), dir.databaseLayout(), fs.get(), LOG_PROVIDER ); try ( NeoStores neoStores = factory.openAllNeoStores( true ) ) { neoStores.getMetaDataStore(); } try ( NeoStores neoStores = factory.openAllNeoStores() ) { long lastCommittedTransactionId = neoStores.getMetaDataStore().getLastCommittedTransactionId(); assertEquals( TransactionIdStore.BASE_TX_ID, lastCommittedTransactionId ); } }
private MetaDataStore newMetaDataStore() { LogProvider logProvider = NullLogProvider.getInstance(); StoreFactory storeFactory = new StoreFactory( testDirectory.databaseLayout(), Config.defaults(), new DefaultIdGeneratorFactory( fs ), pageCacheWithFakeOverflow, fs, logProvider, EmptyVersionContextSupplier.EMPTY ); return storeFactory.openNeoStores( true, StoreType.META_DATA ).getMetaDataStore(); }
@Test public void shouldHaveSameCommittedTransactionAndUpgradeTransactionOnStartup() { // When neoStores = storeFactory( Config.defaults() ).openAllNeoStores( true ); MetaDataStore metaDataStore = neoStores.getMetaDataStore(); // Then assertEquals( metaDataStore.getUpgradeTransaction(), metaDataStore.getLastCommittedTransaction() ); }
@Test public void shouldHaveSpecificCountsTrackerForReadOnlyDatabase() throws IOException { // when StoreFactory readOnlyStoreFactory = storeFactory( Config.defaults( GraphDatabaseSettings.read_only, Settings.TRUE ) ); neoStores = readOnlyStoreFactory.openAllNeoStores( true ); long lastClosedTransactionId = neoStores.getMetaDataStore().getLastClosedTransactionId(); // then assertEquals( -1, neoStores.getCounts().rotate( lastClosedTransactionId ) ); }
@Test public void impossibleToGetNotRequestedStore() { Config config = Config.defaults(); StoreFactory sf = getStoreFactory( config, databaseLayout, fs.get(), NullLogProvider.getInstance() ); exception.expect( IllegalStateException.class ); exception.expectMessage( "Specified store was not initialized. Please specify " + StoreType.META_DATA.name() + " as one of the stores types that should be open to be able to use it." ); try ( NeoStores neoStores = sf.openNeoStores( true, StoreType.NODE_LABEL ) ) { neoStores.getMetaDataStore(); } }
@Test public void setVersion() throws Exception { FileSystemAbstraction fileSystem = fs.get(); File storeDir = dir.directory(); createTestDatabase( fileSystem, storeDir ).shutdown(); DatabaseLayout databaseLayout = dir.databaseLayout(); assertEquals( 0, MetaDataStore.setRecord( pageCache, databaseLayout.metadataStore(), Position.LOG_VERSION, 10 ) ); assertEquals( 10, MetaDataStore.setRecord( pageCache, databaseLayout.metadataStore(), Position.LOG_VERSION, 12 ) ); Config config = Config.defaults(); StoreFactory sf = getStoreFactory( config, databaseLayout, fileSystem, LOG_PROVIDER ); NeoStores neoStores = sf.openAllNeoStores(); assertEquals( 12, neoStores.getMetaDataStore().getCurrentLogVersion() ); neoStores.close(); }