@Override public void force( IOLimiter ioLimiter ) { delegate.force( ioLimiter ); }
@Override public void force( IOLimiter ioLimiter ) { accessor.force( ioLimiter ); }
@Override public void force( IOLimiter ioLimiter ) { instanceSelector.forAll( accessor -> accessor.force( ioLimiter ) ); }
@Override public void force( IOLimiter ioLimiter ) { actual.force( ioLimiter ); }
@Override public void force( IOLimiter ioLimiter ) { accessor.force( ioLimiter ); }
@Test void indexForceMustBeAllowedInReadOnlyMode() throws Exception { // IndexAccessor.force is used in check-pointing, and must be allowed in read-only mode as it would otherwise // prevent backups from working. Config readOnlyConfig = Config.defaults( GraphDatabaseSettings.read_only, Settings.TRUE ); LuceneIndexProvider readOnlyIndexProvider = getLuceneIndexProvider( readOnlyConfig, new DirectoryFactory.InMemoryDirectoryFactory(), fileSystem, graphDbDir ); // We assert that 'force' does not throw an exception getIndexAccessor( readOnlyConfig, readOnlyIndexProvider ).force( IOLimiter.UNLIMITED ); }
private void addUpdates( SpatialIndexProvider provider, StoreIndexDescriptor schemaIndexDescriptor, ValueCreatorUtil<SpatialIndexKey,NativeIndexValue> layoutUtil ) throws IOException, IndexEntryConflictException { IndexAccessor accessor = provider.getOnlineAccessor( schemaIndexDescriptor, samplingConfig() ); try ( IndexUpdater updater = accessor.newUpdater( ONLINE ) ) { // when for ( IndexEntryUpdate<IndexDescriptor> update : layoutUtil.someUpdates( randomRule ) ) { updater.process( update ); } } accessor.force( IOLimiter.UNLIMITED ); accessor.close(); }
@Test public void shouldReportNodesWithDuplicatePropertyValueInUniqueIndex() throws Exception { // given IndexSamplingConfig samplingConfig = new IndexSamplingConfig( Config.defaults() ); Iterator<StoreIndexDescriptor> indexRuleIterator = new SchemaStorage( fixture.directStoreAccess().nativeStores().getSchemaStore() ).indexesGetAll(); while ( indexRuleIterator.hasNext() ) { StoreIndexDescriptor indexRule = indexRuleIterator.next(); IndexAccessor accessor = fixture.directStoreAccess().indexes().lookup( indexRule.providerDescriptor() ) .getOnlineAccessor( indexRule, samplingConfig ); IndexUpdater updater = accessor.newUpdater( IndexUpdateMode.ONLINE ); updater.process( IndexEntryUpdate.add( 42, indexRule.schema(), values( indexRule ) ) ); updater.close(); accessor.force( IOLimiter.UNLIMITED ); accessor.close(); } // when ConsistencySummaryStatistics stats = check(); // then on( stats ).verify( RecordType.NODE, 1 ) // the duplicate in unique index .verify( RecordType.INDEX, 3 ) // the index entries pointing to non-existent node 42 .andThatsAllFolks(); }
accessor.force( IOLimiter.UNLIMITED ); accessor.close();
@Override public void force( IOLimiter ioLimiter ) { delegate.force( ioLimiter ); }
@Override public void force( IOLimiter ioLimiter ) { accessor.force( ioLimiter ); }
@Override public void force( IOLimiter ioLimiter ) { instanceSelector.forAll( accessor -> accessor.force( ioLimiter ) ); }