Skip to content

Commit 444f1ed

Browse files
zaidoon1facebook-github-bot
authored andcommitted
expose compact on deletion factory with min file size via C api (facebook#13887)
Summary: Pull Request resolved: facebook#13887 Reviewed By: hx235 Differential Revision: D80717735 Pulled By: cbi42 fbshipit-source-id: efecf436188d473a18359e715df979ff24f2fd2e
1 parent a5d4db6 commit 444f1ed

2 files changed

Lines changed: 13 additions & 0 deletions

File tree

db/c.cc

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4751,6 +4751,15 @@ void rocksdb_options_add_compact_on_deletion_collector_factory_del_ratio(
47514751
opt->rep.table_properties_collector_factories.emplace_back(compact_on_del);
47524752
}
47534753

4754+
void rocksdb_options_add_compact_on_deletion_collector_factory_min_file_size(
4755+
rocksdb_options_t* opt, size_t window_size, size_t num_dels_trigger,
4756+
double deletion_ratio, uint64_t min_file_size) {
4757+
std::shared_ptr<ROCKSDB_NAMESPACE::TablePropertiesCollectorFactory>
4758+
compact_on_del = NewCompactOnDeletionCollectorFactory(
4759+
window_size, num_dels_trigger, deletion_ratio, min_file_size);
4760+
opt->rep.table_properties_collector_factories.emplace_back(compact_on_del);
4761+
}
4762+
47544763
void rocksdb_set_perf_level(int v) {
47554764
PerfLevel level = static_cast<PerfLevel>(v);
47564765
SetPerfLevel(level);

include/rocksdb/c.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1925,6 +1925,10 @@ extern ROCKSDB_LIBRARY_API void
19251925
rocksdb_options_add_compact_on_deletion_collector_factory_del_ratio(
19261926
rocksdb_options_t*, size_t window_size, size_t num_dels_trigger,
19271927
double deletion_ratio);
1928+
extern ROCKSDB_LIBRARY_API void
1929+
rocksdb_options_add_compact_on_deletion_collector_factory_min_file_size(
1930+
rocksdb_options_t*, size_t window_size, size_t num_dels_trigger,
1931+
double deletion_ratio, uint64_t min_file_size);
19281932
extern ROCKSDB_LIBRARY_API void rocksdb_options_set_manual_wal_flush(
19291933
rocksdb_options_t* opt, unsigned char);
19301934
extern ROCKSDB_LIBRARY_API unsigned char rocksdb_options_get_manual_wal_flush(

0 commit comments

Comments
 (0)