Unverified Commit 8dc64d85 authored by qupeng's avatar qupeng Committed by GitHub

compaction filter: add bottommost level (#494)

Signed-off-by: 's avatarqupeng <qupeng@pingcap.com>
parent ca985cef
......@@ -3151,6 +3151,11 @@ unsigned char crocksdb_compactionfiltercontext_is_manual_compaction(
return context->rep.is_manual_compaction;
}
unsigned char crocksdb_compactionfiltercontext_is_bottommost_level(
crocksdb_compactionfiltercontext_t* context) {
return context->rep.is_bottommost_level;
}
crocksdb_compactionfilterfactory_t* crocksdb_compactionfilterfactory_create(
void* state, void (*destructor)(void*),
crocksdb_compactionfilter_t* (*create_compaction_filter)(
......
......@@ -1248,6 +1248,10 @@ extern C_ROCKSDB_LIBRARY_API unsigned char
crocksdb_compactionfiltercontext_is_manual_compaction(
crocksdb_compactionfiltercontext_t* context);
extern C_ROCKSDB_LIBRARY_API unsigned char
crocksdb_compactionfiltercontext_is_bottommost_level(
crocksdb_compactionfiltercontext_t* context);
/* Compaction Filter Factory */
extern C_ROCKSDB_LIBRARY_API crocksdb_compactionfilterfactory_t*
......
......@@ -1397,6 +1397,9 @@ extern "C" {
pub fn crocksdb_compactionfiltercontext_is_manual_compaction(
context: *const DBCompactionFilterContext,
) -> bool;
pub fn crocksdb_compactionfiltercontext_is_bottommost_level(
context: *const DBCompactionFilterContext,
) -> bool;
// Compaction filter factory
pub fn crocksdb_compactionfilterfactory_create(
......
......@@ -127,6 +127,11 @@ impl CompactionFilterContext {
let ctx = &self.0 as *const DBCompactionFilterContext;
unsafe { crocksdb_ffi::crocksdb_compactionfiltercontext_is_manual_compaction(ctx) }
}
pub fn is_bottommost_level(&self) -> bool {
let ctx = &self.0 as *const DBCompactionFilterContext;
unsafe { crocksdb_ffi::crocksdb_compactionfiltercontext_is_bottommost_level(ctx) }
}
}
pub trait CompactionFilterFactory {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment