PokIsemaine commented on code in PR #2332:
URL: https://github.com/apache/kvrocks/pull/2332#discussion_r1673453096
##########
src/storage/storage.cc:
##########
@@ -604,16 +610,19 @@ rocksdb::Status Storage::Get(const rocksdb::ReadOptions
&options, rocksdb::Colum
return s;
}
-rocksdb::Status Storage::Get(const rocksdb::ReadOptions &options, const
rocksdb::Slice &key,
+rocksdb::Status Storage::Get(engine::Context &ctx, const rocksdb::ReadOptions
&options, const rocksdb::Slice &key,
rocksdb::PinnableSlice *value) {
- return Get(options, db_->DefaultColumnFamily(), key, value);
+ return Get(ctx, options, db_->DefaultColumnFamily(), key, value);
}
-rocksdb::Status Storage::Get(const rocksdb::ReadOptions &options,
rocksdb::ColumnFamilyHandle *column_family,
- const rocksdb::Slice &key, rocksdb::PinnableSlice
*value) {
+rocksdb::Status Storage::Get(engine::Context &ctx, const rocksdb::ReadOptions
&options,
+ rocksdb::ColumnFamilyHandle *column_family, const
rocksdb::Slice &key,
+ rocksdb::PinnableSlice *value) {
rocksdb::Status s;
if (is_txn_mode_ && txn_write_batch_->GetWriteBatch()->Count() > 0) {
s = txn_write_batch_->GetFromBatchAndDB(db_.get(), options, column_family,
key, value);
+ } else if (ctx.batch) {
+ s = ctx.batch->GetFromBatchAndDB(db_.get(), options, column_family, key,
value);
} else {
s = db_->Get(options, column_family, key, value);
}
Review Comment:
The snapshot property in options is set by the caller, and it gets a fixed
snapshot from the ctx.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]