More checks

This commit is contained in:
Andrea Cavalli 2023-09-20 00:56:21 +02:00
parent 0caffbfa79
commit e4ec49e9aa

View File

@ -50,6 +50,7 @@ public class RocksIteratorObj extends SimpleResource {
public synchronized void seek(byte[] seekArray) throws RocksDBException { public synchronized void seek(byte[] seekArray) throws RocksDBException {
ensureOpen(); ensureOpen();
rocksIterator.status();
startedIterSeek.increment(); startedIterSeek.increment();
try { try {
iterSeekTime.record(() -> rocksIterator.seek(seekArray)); iterSeekTime.record(() -> rocksIterator.seek(seekArray));
@ -84,10 +85,14 @@ public class RocksIteratorObj extends SimpleResource {
/** /**
* Useful for reverse iterations * Useful for reverse iterations
*/ */
public synchronized void seekFrom(Buf key) { public synchronized void seekFrom(Buf key) throws RocksDBException {
ensureOpen(); ensureOpen();
var keyArray = LLUtils.asArray(key); var keyArray = LLUtils.asArray(key);
try {
rocksIterator.seekForPrev(keyArray); rocksIterator.seekForPrev(keyArray);
} finally {
}
rocksIterator.status();
// This is useful to retain the key buffer in memory and avoid deallocations // This is useful to retain the key buffer in memory and avoid deallocations
this.seekingFrom = keyArray; this.seekingFrom = keyArray;
} }
@ -95,12 +100,17 @@ public class RocksIteratorObj extends SimpleResource {
/** /**
* Useful for forward iterations * Useful for forward iterations
*/ */
public synchronized void seekTo(Buf key) { public synchronized void seekTo(Buf key) throws RocksDBException {
ensureOpen(); ensureOpen();
rocksIterator.status();
var keyArray = LLUtils.asArray(key); var keyArray = LLUtils.asArray(key);
startedIterSeek.increment(); startedIterSeek.increment();
try {
iterSeekTime.record(() -> rocksIterator.seek(keyArray)); iterSeekTime.record(() -> rocksIterator.seek(keyArray));
} finally {
endedIterSeek.increment(); endedIterSeek.increment();
}
rocksIterator.status();
// This is useful to retain the key buffer in memory and avoid deallocations // This is useful to retain the key buffer in memory and avoid deallocations
this.seekingTo = keyArray; this.seekingTo = keyArray;
} }