pub struct SstableInfo {Show 16 fields
pub object_id: HummockSstableObjectId,
pub sst_id: HummockSstableId,
pub key_range: Option<KeyRange>,
pub file_size: u64,
pub table_ids: Vec<TableId>,
pub meta_offset: u64,
pub stale_key_count: u64,
pub total_key_count: u64,
pub min_epoch: u64,
pub max_epoch: u64,
pub uncompressed_file_size: u64,
pub range_tombstone_count: u64,
pub bloom_filter_kind: i32,
pub sst_size: u64,
pub vnode_statistics: Option<VnodeStatistics>,
pub filter_type: i32,
}Fields§
§object_id: HummockSstableObjectId§sst_id: HummockSstableId§key_range: Option<KeyRange>§file_size: u64represents the physical object size, which is usually used in the builder.
table_ids: Vec<TableId>§meta_offset: u64§stale_key_count: u64§total_key_count: u64§min_epoch: u64§max_epoch: u64§uncompressed_file_size: u64§range_tombstone_count: u64§bloom_filter_kind: i32§sst_size: u64In order to calculate more finely in the compaction strategy, we need to re-calculate the sst_size after split sst
sst_size represents the size of the sst instead of the object size(usually used in the meta).
vnode_statistics: Option<VnodeStatistics>Optional per-vnode statistics for query pruning when the SST spans only a small set of vnodes. Only emitted when SST contains multiple vnodes to avoid redundancy with key_range.
filter_type: i32Implementations§
Source§impl SstableInfo
impl SstableInfo
Sourcepub fn bloom_filter_kind(&self) -> BloomFilterType
pub fn bloom_filter_kind(&self) -> BloomFilterType
Returns the enum value of bloom_filter_kind, or the default if the field is set to an invalid enum value.
Sourcepub fn set_bloom_filter_kind(&mut self, value: BloomFilterType)
pub fn set_bloom_filter_kind(&mut self, value: BloomFilterType)
Sets bloom_filter_kind to the provided enum value.
Sourcepub fn filter_type(&self) -> SstableFilterType
pub fn filter_type(&self) -> SstableFilterType
Returns the enum value of filter_type, or the default if the field is set to an invalid enum value.
Sourcepub fn set_filter_type(&mut self, value: SstableFilterType)
pub fn set_filter_type(&mut self, value: SstableFilterType)
Sets filter_type to the provided enum value.
Source§impl SstableInfo
impl SstableInfo
pub fn get_object_id(&self) -> HummockSstableObjectId
pub fn get_sst_id(&self) -> HummockSstableId
pub fn get_key_range(&self) -> Result<&KeyRange, PbFieldNotFound>
pub fn get_file_size(&self) -> u64
pub fn get_table_ids(&self) -> &Vec<TableId> ⓘ
pub fn get_meta_offset(&self) -> u64
pub fn get_stale_key_count(&self) -> u64
pub fn get_total_key_count(&self) -> u64
pub fn get_min_epoch(&self) -> u64
pub fn get_max_epoch(&self) -> u64
pub fn get_uncompressed_file_size(&self) -> u64
pub fn get_range_tombstone_count(&self) -> u64
pub fn get_bloom_filter_kind(&self) -> Result<BloomFilterType, PbFieldNotFound>
pub fn get_sst_size(&self) -> u64
pub fn get_vnode_statistics(&self) -> Result<&VnodeStatistics, PbFieldNotFound>
pub fn get_filter_type(&self) -> Result<SstableFilterType, PbFieldNotFound>
Trait Implementations§
Source§impl Clone for SstableInfo
impl Clone for SstableInfo
Source§fn clone(&self) -> SstableInfo
fn clone(&self) -> SstableInfo
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SstableInfo
impl Debug for SstableInfo
Source§impl Default for SstableInfo
impl Default for SstableInfo
Source§impl<'de> Deserialize<'de> for SstableInfo
impl<'de> Deserialize<'de> for SstableInfo
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Source§impl Message for SstableInfo
impl Message for SstableInfo
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self.Source§impl PartialEq for SstableInfo
impl PartialEq for SstableInfo
Source§impl Serialize for SstableInfo
impl Serialize for SstableInfo
impl StructuralPartialEq for SstableInfo
Auto Trait Implementations§
impl Freeze for SstableInfo
impl RefUnwindSafe for SstableInfo
impl Send for SstableInfo
impl Sync for SstableInfo
impl Unpin for SstableInfo
impl UnwindSafe for SstableInfo
Blanket Implementations§
§impl<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
fn as_<T>(self) -> Twhere
T: CastFrom<U>,
self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read moreSource§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: AsAny + ?Sized,
impl<T> Downcast for Twhere
T: AsAny + ?Sized,
§fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
Any.§fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
Any.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered].