Log CompactOnDeletionCollectorFactory parameters on DB open (#6686)
Summary: Log it in the info log to help in troubleshooting. It is logged as follows - ``` 2020/04/10-10:51:39.886662 7ffff7fef340 Options.table_properties_collectors: CompactOnDeletionCollector (Sliding window size = 100 Deletion trigger = 90); ``` Tests: make check Pull Request resolved: https://github.com/facebook/rocksdb/pull/6686 Reviewed By: ltamasi Differential Revision: D21002442 Pulled By: anand1976 fbshipit-source-id: 7adf0dbae7f1febcb00ce61fea5097118ede5c6a
This commit is contained in:
parent
272d006037
commit
b54712ed7d
@ -136,6 +136,11 @@ class TablePropertiesCollectorFactory {
|
|||||||
|
|
||||||
// The name of the properties collector can be used for debugging purpose.
|
// The name of the properties collector can be used for debugging purpose.
|
||||||
virtual const char* Name() const = 0;
|
virtual const char* Name() const = 0;
|
||||||
|
|
||||||
|
// Can be overridden by sub-classes to return the Name, followed by
|
||||||
|
// configuration info that will // be logged to the info log when the
|
||||||
|
// DB is opened
|
||||||
|
virtual std::string ToString() const { return Name(); }
|
||||||
};
|
};
|
||||||
|
|
||||||
// TableProperties contains a bunch of read-only properties of its associated
|
// TableProperties contains a bunch of read-only properties of its associated
|
||||||
|
@ -18,9 +18,9 @@ namespace ROCKSDB_NAMESPACE {
|
|||||||
class CompactOnDeletionCollectorFactory
|
class CompactOnDeletionCollectorFactory
|
||||||
: public TablePropertiesCollectorFactory {
|
: public TablePropertiesCollectorFactory {
|
||||||
public:
|
public:
|
||||||
virtual ~CompactOnDeletionCollectorFactory() {}
|
~CompactOnDeletionCollectorFactory() {}
|
||||||
|
|
||||||
virtual TablePropertiesCollector* CreateTablePropertiesCollector(
|
TablePropertiesCollector* CreateTablePropertiesCollector(
|
||||||
TablePropertiesCollectorFactory::Context context) override;
|
TablePropertiesCollectorFactory::Context context) override;
|
||||||
|
|
||||||
// Change the value of sliding_window_size "N"
|
// Change the value of sliding_window_size "N"
|
||||||
@ -34,10 +34,12 @@ class CompactOnDeletionCollectorFactory
|
|||||||
deletion_trigger_.store(deletion_trigger);
|
deletion_trigger_.store(deletion_trigger);
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual const char* Name() const override {
|
const char* Name() const override {
|
||||||
return "CompactOnDeletionCollector";
|
return "CompactOnDeletionCollector";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::string ToString() const override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
friend std::shared_ptr<CompactOnDeletionCollectorFactory>
|
friend std::shared_ptr<CompactOnDeletionCollectorFactory>
|
||||||
NewCompactOnDeletionCollectorFactory(size_t sliding_window_size,
|
NewCompactOnDeletionCollectorFactory(size_t sliding_window_size,
|
||||||
|
@ -310,14 +310,13 @@ void ColumnFamilyOptions::Dump(Logger* log) const {
|
|||||||
ROCKS_LOG_HEADER(log,
|
ROCKS_LOG_HEADER(log,
|
||||||
"Options.compaction_options_fifo.allow_compaction: %d",
|
"Options.compaction_options_fifo.allow_compaction: %d",
|
||||||
compaction_options_fifo.allow_compaction);
|
compaction_options_fifo.allow_compaction);
|
||||||
std::string collector_names;
|
std::ostringstream collector_info;
|
||||||
for (const auto& collector_factory : table_properties_collector_factories) {
|
for (const auto& collector_factory : table_properties_collector_factories) {
|
||||||
collector_names.append(collector_factory->Name());
|
collector_info << collector_factory->ToString() << ';';
|
||||||
collector_names.append("; ");
|
|
||||||
}
|
}
|
||||||
ROCKS_LOG_HEADER(
|
ROCKS_LOG_HEADER(
|
||||||
log, " Options.table_properties_collectors: %s",
|
log, " Options.table_properties_collectors: %s",
|
||||||
collector_names.c_str());
|
collector_info.str().c_str());
|
||||||
ROCKS_LOG_HEADER(log,
|
ROCKS_LOG_HEADER(log,
|
||||||
" Options.inplace_update_support: %d",
|
" Options.inplace_update_support: %d",
|
||||||
inplace_update_support);
|
inplace_update_support);
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
#include "utilities/table_properties_collectors/compact_on_deletion_collector.h"
|
#include "utilities/table_properties_collectors/compact_on_deletion_collector.h"
|
||||||
|
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
#include <sstream>
|
||||||
#include "rocksdb/utilities/table_properties_collectors.h"
|
#include "rocksdb/utilities/table_properties_collectors.h"
|
||||||
|
|
||||||
namespace ROCKSDB_NAMESPACE {
|
namespace ROCKSDB_NAMESPACE {
|
||||||
@ -78,6 +79,13 @@ CompactOnDeletionCollectorFactory::CreateTablePropertiesCollector(
|
|||||||
sliding_window_size_.load(), deletion_trigger_.load());
|
sliding_window_size_.load(), deletion_trigger_.load());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::string CompactOnDeletionCollectorFactory::ToString() const {
|
||||||
|
std::ostringstream cfg;
|
||||||
|
cfg << Name() << " (Sliding window size = " << sliding_window_size_.load()
|
||||||
|
<< " Deletion trigger = " << deletion_trigger_.load() << ')';
|
||||||
|
return cfg.str();
|
||||||
|
}
|
||||||
|
|
||||||
std::shared_ptr<CompactOnDeletionCollectorFactory>
|
std::shared_ptr<CompactOnDeletionCollectorFactory>
|
||||||
NewCompactOnDeletionCollectorFactory(
|
NewCompactOnDeletionCollectorFactory(
|
||||||
size_t sliding_window_size,
|
size_t sliding_window_size,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user