Skip to content

Commit a7bbb76

Browse files
committed
Extend existing tests
1 parent bb5aa56 commit a7bbb76

2 files changed

Lines changed: 46 additions & 0 deletions

File tree

java/src/test/java/org/rocksdb/DBOptionsTest.java

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -453,6 +453,26 @@ public void setWriteBufferManagerWithZeroBufferSize() throws RocksDBException {
453453
}
454454
}
455455

456+
@Test
457+
public void writeBufferManagerDynamicSettings() throws RocksDBException {
458+
try (final DBOptions opt = new DBOptions(); final Cache cache = new LRUCache(8 * 1024 * 1024);
459+
final WriteBufferManager writeBufferManager = new WriteBufferManager(4 * 1024 * 1024, cache, false)) {
460+
opt.setWriteBufferManager(writeBufferManager);
461+
462+
// Test initial state
463+
assertThat(writeBufferManager.enabled()).isTrue();
464+
assertThat(writeBufferManager.bufferSize()).isEqualTo(4 * 1024 * 1024);
465+
assertThat(writeBufferManager.allowStall()).isFalse();
466+
467+
// Test dynamic updates
468+
writeBufferManager.setBufferSize(8 * 1024 * 1024);
469+
assertThat(writeBufferManager.bufferSize()).isEqualTo(8 * 1024 * 1024);
470+
471+
writeBufferManager.setAllowStall(true);
472+
assertThat(writeBufferManager.allowStall()).isTrue();
473+
}
474+
}
475+
456476
@Test
457477
public void compactionReadaheadSize() {
458478
try(final DBOptions opt = new DBOptions()) {

java/src/test/java/org/rocksdb/OptionsTest.java

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -699,6 +699,32 @@ public void setWriteBufferManagerWithAllowStall() throws RocksDBException {
699699
}
700700
}
701701

702+
@Test
703+
public void writeBufferManagerMonitoring() throws RocksDBException {
704+
try (final Options opt = new Options(); final Cache cache = new LRUCache(1024 * 1024);
705+
final WriteBufferManager writeBufferManager = new WriteBufferManager(8 * 1024 * 1024, cache, true)) {
706+
opt.setWriteBufferManager(writeBufferManager);
707+
708+
// Test monitoring methods
709+
assertThat(writeBufferManager.enabled()).isTrue();
710+
assertThat(writeBufferManager.costToCache()).isTrue();
711+
assertThat(writeBufferManager.bufferSize()).isEqualTo(8 * 1024 * 1024);
712+
assertThat(writeBufferManager.memoryUsage()).isEqualTo(0L);
713+
assertThat(writeBufferManager.mutableMemtableMemoryUsage()).isEqualTo(0L);
714+
assertThat(writeBufferManager.dummyEntriesInCacheUsage()).isEqualTo(0L);
715+
assertThat(writeBufferManager.isStallActive()).isFalse();
716+
assertThat(writeBufferManager.isStallThresholdExceeded()).isFalse();
717+
718+
// Test dynamic buffer size change
719+
writeBufferManager.setBufferSize(16 * 1024 * 1024);
720+
assertThat(writeBufferManager.bufferSize()).isEqualTo(16 * 1024 * 1024);
721+
722+
// Test dynamic allowStall change
723+
writeBufferManager.setAllowStall(false);
724+
assertThat(writeBufferManager.allowStall()).isFalse();
725+
}
726+
}
727+
702728
@Test
703729
public void compactionReadaheadSize() {
704730
try (final Options opt = new Options()) {

0 commit comments

Comments
 (0)