diff options
-rw-r--r-- | unreleased_history/behavior_changes/dump_all_keys.md | 1 | ||||
-rw-r--r-- | utilities/cache_dump_load_impl.cc | 3 | ||||
-rw-r--r-- | utilities/cache_dump_load_impl.h | 2 |
3 files changed, 5 insertions, 1 deletions
diff --git a/unreleased_history/behavior_changes/dump_all_keys.md b/unreleased_history/behavior_changes/dump_all_keys.md new file mode 100644 index 000000000..913cc0442 --- /dev/null +++ b/unreleased_history/behavior_changes/dump_all_keys.md @@ -0,0 +1 @@ +Dump all keys for cache dumper impl if `SetDumpFilter()` is not called diff --git a/utilities/cache_dump_load_impl.cc b/utilities/cache_dump_load_impl.cc index d70fb27c9..f0b2a7344 100644 --- a/utilities/cache_dump_load_impl.cc +++ b/utilities/cache_dump_load_impl.cc @@ -26,6 +26,7 @@ namespace ROCKSDB_NAMESPACE { // requirement. Status CacheDumperImpl::SetDumpFilter(std::vector<DB*> db_list) { Status s = Status::OK(); + dump_all_keys_ = false; for (size_t i = 0; i < db_list.size(); i++) { assert(i < db_list.size()); TablePropertiesCollection ptc; @@ -157,7 +158,7 @@ CacheDumperImpl::DumpOneBlockCallBack(std::string& buf) { } // based on the key prefix, check if the block should be filter out. - if (ShouldFilterOut(key)) { + if (!dump_all_keys_ && ShouldFilterOut(key)) { return; } diff --git a/utilities/cache_dump_load_impl.h b/utilities/cache_dump_load_impl.h index 0034a1453..ee892f474 100644 --- a/utilities/cache_dump_load_impl.h +++ b/utilities/cache_dump_load_impl.h @@ -126,6 +126,8 @@ class CacheDumperImpl : public CacheDumper { // Deadline for dumper in microseconds. std::chrono::microseconds deadline_; uint64_t dumped_size_bytes_; + // dump all keys of cache if user doesn't call SetDumpFilter + bool dump_all_keys_ = true; }; // The default implementation of CacheDumpedLoader |