Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
public:
class TransactionImpl {
public:
+ // amount of ops included
+ virtual size_t get_count() const = 0;
+
+ // total encoded data size
+ virtual size_t get_size_bytes() const = 0;
+
/// Set Keys
void set(
const std::string &prefix, ///< [in] Prefix for keys, or CF name
const std::string &k,
const ceph::bufferlist &to_set_bl);
public:
+ size_t get_count() const override {
+ return bat.Count();
+ }
+ size_t get_size_bytes() const override {
+ return bat.GetDataSize();
+ }
void set(
const std::string &prefix,
const std::string &k,
explicit TransactionImpl_(KeyValueDBMemory *db) : db(db) {}
-
+ // dummy implementation
+ size_t get_count() const override {
+ return 0;
+ }
+ // dummy implementation
+ size_t get_size_bytes() const override {
+ return 0;
+ }
struct SetOp : public Context {
KeyValueDBMemory *db;
std::pair<std::string,std::string> key;