Skip to content

Commit

Permalink
Add keyExist test to verify facebook#12921
Browse files Browse the repository at this point in the history
  • Loading branch information
rhubner committed Sep 27, 2024
1 parent 79790cf commit 8136b4d
Showing 1 changed file with 27 additions and 0 deletions.
27 changes: 27 additions & 0 deletions java/src/test/java/org/rocksdb/KeyExistsTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ public class KeyExistsTest {
new RocksNativeLibraryResource();

@Rule public TemporaryFolder dbFolder = new TemporaryFolder();
@Rule public TemporaryFolder dbFolder2 = new TemporaryFolder();

@Rule public ExpectedException exceptionRule = ExpectedException.none();

Expand All @@ -46,6 +47,32 @@ public void after() {
db.close();
}

@Test
public void keyExistBug() throws RocksDBException{
try(RocksDB db2 = RocksDB.open(dbFolder2.getRoot().getAbsolutePath())) {
db2.put("key".getBytes(UTF_8), "value".getBytes(UTF_8));
assertThat(db2.keyExists("key".getBytes(UTF_8))).isTrue();
assertThat(db2.keyExists("key2".getBytes(UTF_8))).isFalse();
assertThat(db2.keyMayExist("key".getBytes(UTF_8), null)).isTrue();
// db2.flushWal(true);
// db2.compactRange();
}
try(RocksDB db2 = RocksDB.open(dbFolder2.getRoot().getAbsolutePath())) {
assertThat(db2.keyMayExist("key".getBytes(UTF_8), null)).isTrue();
assertThat(db2.keyExists("key".getBytes(UTF_8))).isTrue();
assertThat(db2.keyExists("key2".getBytes(UTF_8))).isFalse();
}
try(RocksDB db2 = RocksDB.open(dbFolder2.getRoot().getAbsolutePath())) {
assertThat(db2.keyMayExist("key".getBytes(UTF_8), null)).isTrue();
}
try(RocksDB db2 = RocksDB.open(dbFolder2.getRoot().getAbsolutePath())) {
assertThat(db2.keyExists("key".getBytes(UTF_8))).isTrue();
}
try(RocksDB db2 = RocksDB.open(dbFolder2.getRoot().getAbsolutePath())) {
assertThat(db2.keyExists("key2".getBytes(UTF_8))).isFalse();
}
}

@Test
public void keyExists() throws RocksDBException {
db.put("key".getBytes(UTF_8), "value".getBytes(UTF_8));
Expand Down

0 comments on commit 8136b4d

Please sign in to comment.