]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/rocksdb/table/get_context.h
import 14.2.4 nautilus point release
[ceph.git] / ceph / src / rocksdb / table / get_context.h
index 066be104ba8aa1fafa8fe0bb6c34ac43148a743e..d7d0e9808b177bdda4466a2a1bf84a1a7e8bdc8f 100644 (file)
@@ -6,7 +6,6 @@
 #pragma once
 #include <string>
 #include "db/merge_context.h"
-#include "db/range_del_aggregator.h"
 #include "db/read_callback.h"
 #include "rocksdb/env.h"
 #include "rocksdb/statistics.h"
@@ -22,9 +21,11 @@ struct GetContextStats {
   uint64_t num_cache_index_hit = 0;
   uint64_t num_cache_data_hit = 0;
   uint64_t num_cache_filter_hit = 0;
+  uint64_t num_cache_compression_dict_hit = 0;
   uint64_t num_cache_index_miss = 0;
   uint64_t num_cache_filter_miss = 0;
   uint64_t num_cache_data_miss = 0;
+  uint64_t num_cache_compression_dict_miss = 0;
   uint64_t num_cache_bytes_read = 0;
   uint64_t num_cache_miss = 0;
   uint64_t num_cache_add = 0;
@@ -35,6 +36,8 @@ struct GetContextStats {
   uint64_t num_cache_data_bytes_insert = 0;
   uint64_t num_cache_filter_add = 0;
   uint64_t num_cache_filter_bytes_insert = 0;
+  uint64_t num_cache_compression_dict_add = 0;
+  uint64_t num_cache_compression_dict_bytes_insert = 0;
 };
 
 class GetContext {
@@ -52,8 +55,9 @@ class GetContext {
   GetContext(const Comparator* ucmp, const MergeOperator* merge_operator,
              Logger* logger, Statistics* statistics, GetState init_state,
              const Slice& user_key, PinnableSlice* value, bool* value_found,
-             MergeContext* merge_context, RangeDelAggregator* range_del_agg,
-             Env* env, SequenceNumber* seq = nullptr,
+             MergeContext* merge_context,
+             SequenceNumber* max_covering_tombstone_seq, Env* env,
+             SequenceNumber* seq = nullptr,
              PinnedIteratorsManager* _pinned_iters_mgr = nullptr,
              ReadCallback* callback = nullptr, bool* is_blob_index = nullptr);
 
@@ -76,7 +80,9 @@ class GetContext {
 
   GetState State() const { return state_; }
 
-  RangeDelAggregator* range_del_agg() { return range_del_agg_; }
+  SequenceNumber* max_covering_tombstone_seq() {
+    return max_covering_tombstone_seq_;
+  }
 
   PinnedIteratorsManager* pinned_iters_mgr() { return pinned_iters_mgr_; }
 
@@ -111,7 +117,7 @@ class GetContext {
   PinnableSlice* pinnable_val_;
   bool* value_found_;  // Is value set correctly? Used by KeyMayExist
   MergeContext* merge_context_;
-  RangeDelAggregator* range_del_agg_;
+  SequenceNumber* max_covering_tombstone_seq_;
   Env* env_;
   // If a key is found, seq_ will be set to the SequenceNumber of most recent
   // write to the key or kMaxSequenceNumber if unknown