use snapshot for scan in rocksdb
This commit is contained in:
parent
90788721b2
commit
11ea5a1569
@ -184,6 +184,7 @@ int main(int argc, char *argv[]) {
|
||||
}
|
||||
|
||||
handle = handles[0];
|
||||
auto *snapshot = db->GetSnapshot();
|
||||
for (size_t tid = 0; tid < args.threads; ++tid) {
|
||||
auto *tk = &keys[tid];
|
||||
wg.emplace_back([&, tid] {
|
||||
@ -196,6 +197,7 @@ int main(int argc, char *argv[]) {
|
||||
ropt.iterate_upper_bound = &upper_bound_slice;
|
||||
}
|
||||
ropt.prefix_same_as_start = true;
|
||||
ropt.snapshot = snapshot;
|
||||
size_t round = 0;
|
||||
|
||||
barrier.arrive_and_wait();
|
||||
@ -262,6 +264,7 @@ int main(int argc, char *argv[]) {
|
||||
uint64_t ops = total_op.load(std::memory_order_relaxed) / b.elapse_sec();
|
||||
fmt::println("{},{},{},{},{},{},{}", args.mode, args.threads, args.key_size, args.value_size, ratio, (uint64_t) ops,
|
||||
(uint64_t) b.elapse_ms());
|
||||
db->ReleaseSnapshot(snapshot);
|
||||
delete handle;
|
||||
delete db;
|
||||
std::filesystem::remove_all(args.path);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user