private ZoneId randomZoneIdWithName() { String timeZoneName = TIME_ZONE_NAMES[random.nextInt( TIME_ZONE_NAMES.length )]; return ZoneId.of( timeZoneName ); } }
@SuppressWarnings( "unchecked" ) private IndexEntryUpdate<IndexDescriptor> selectRandomItem( Set<IndexEntryUpdate<IndexDescriptor>> expectedData ) { return expectedData.toArray( new IndexEntryUpdate[0] )[random.nextInt( expectedData.size() )]; }
@Override void createLateState() { state.nodeDoDelete( /*id=*/random.nextInt( 1 << 20 ) ); }
@Override void createLateState() { state.nodeDoDelete( /*id=*/random.nextInt( 1 << 20 ) ); }
private Value[] createValues() { int numberOfProperties = random.nextInt( 1, 20 ); Value[] values = new Value[numberOfProperties]; for ( int key = 0; key < numberOfProperties; key++ ) { values[key] = random.nextValue(); } return values; }
private long incrementRandomCounts( NodeRelationshipCache link, int nodeCount, int i ) { long highestSeenCount = 0; while ( i-- > 0 ) { long node = random.nextInt( nodeCount ); highestSeenCount = max( highestSeenCount, link.incrementCount( node ) ); } return highestSeenCount; }
@Override void createEarlyState() { state.nodeDoCreate( /*id=*/random.nextInt( 1 << 20 ) ); }
private void deleteExistingNode( List<Pair<Long,Label[]>> existingNodes ) { int targetIndex = random.nextInt( existingNodes.size() ); Pair<Long,Label[]> existingPair = existingNodes.get( targetIndex ); Node node = db.getNodeById( existingPair.first() ); node.delete(); existingNodes.remove( targetIndex ); }
private void deleteExistingNode( List<Pair<Long,Label[]>> existingNodes ) { int targetIndex = random.nextInt( existingNodes.size() ); Pair<Long,Label[]> existingPair = existingNodes.get( targetIndex ); Node node = db.getNodeById( existingPair.first() ); node.delete(); existingNodes.remove( targetIndex ); }
private Node createNewNode( Label[] labels ) { Node node = db.createNode( labels ); node.setProperty( PROPERTY_KEY, random.nextInt() ); return node; }
private Page randomPage( int corruptionPercent, MutableInt totalNumberOfCorruptions ) { int numberOfCorruptions = 0; boolean internal = randomRule.nextBoolean(); if ( randomRule.nextInt( 100 ) < corruptionPercent ) { int maxCorruptions = internal ? possibleCorruptionsInInternal.size() : possibleCorruptionsInLeaf.size(); numberOfCorruptions = randomRule.intBetween( 1, maxCorruptions ); totalNumberOfCorruptions.add( numberOfCorruptions ); } return internal ? randomInternal( numberOfCorruptions ) : randomLeaf( numberOfCorruptions ); }
@Test public void shouldWriteAndReadSmallToSemiLargeEntries() throws IOException { int keyValueSizeCap = keyValueSizeCapFromPageSize( PAGE_SIZE ); int minValueSize = 0; int maxValueSize = random.nextInt( 200 ); int minKeySize = 4; int maxKeySize = keyValueSizeCap / 5; shouldWriteAndReadEntriesOfRandomSizes( minKeySize, maxKeySize, minValueSize, maxValueSize ); }
@Test public void shouldWriteAndReadSemiLargeToLargeEntries() throws IOException { int keyValueSizeCap = keyValueSizeCapFromPageSize( PAGE_SIZE ); int minValueSize = 0; int maxValueSize = random.nextInt( 200 ); int minKeySize = keyValueSizeCap / 5; int maxKeySize = keyValueSizeCap - maxValueSize; shouldWriteAndReadEntriesOfRandomSizes( minKeySize, maxKeySize, minValueSize, maxValueSize ); }
private SeekCursor<KEY,VALUE> seekCursor( long fromInclusive, long toExclusive, PageCursor pageCursor, long stableGeneration, long unstableGeneration ) throws IOException { return new SeekCursor<>( pageCursor, node, key( fromInclusive ), key( toExclusive ), layout, stableGeneration, unstableGeneration, generationSupplier, failingRootCatchup, unstableGeneration , exceptionDecorator, random.nextInt( 1, DEFAULT_MAX_READ_AHEAD ) ); }
@Test public void shouldWriteAndReadSmallToLargeEntries() throws IOException { int keyValueSizeCap = keyValueSizeCapFromPageSize( PAGE_SIZE ); int minValueSize = 0; int maxValueSize = random.nextInt( 200 ); int minKeySize = 4; int maxKeySize = keyValueSizeCap - maxValueSize; shouldWriteAndReadEntriesOfRandomSizes( minKeySize, maxKeySize, minValueSize, maxValueSize ); }
@Before public void before() { PageCache pageCache = pageCacheRule.getPageCache( fileSystem ); store = life.add( new NativeLabelScanStore( pageCache, directory.databaseLayout(), fileSystem, FullStoreChangeStream.EMPTY, false, new Monitors(), RecoveryCleanupWorkCollector.immediate(), // a bit of random pageSize Math.min( pageCache.pageSize(), 256 << random.nextInt( 5 ) ) ) ); }