pub struct GroupConstruct {
pub group_config: Option<CompactionConfig>,
pub parent_group_id: u64,
pub table_ids: Vec<u32>,
pub group_id: u64,
pub new_sst_start_id: u64,
pub version: i32,
pub split_key: Option<Vec<u8>>,
}
Fields§
§group_config: Option<CompactionConfig>
§parent_group_id: u64
If parent_group_id is not 0, it means parent_group_id splits into parent_group_id and this group, so this group is not empty initially.
table_ids: Vec<u32>
👎Deprecated
§group_id: u64
§new_sst_start_id: u64
§version: i32
§split_key: Option<Vec<u8>>
The split_key is the key that the group is split by. When GroupConstruct with commit_epoch, split_key will be empty When split_key is not None, GroupConstruct tells to use split_key to check each level and split the sstable_info in the level into two groups (bounded by split_key). For the left sstable_info, split_key (right_exclusive=true) will be used as key_range_right. In the current implementation split_key always contains a table_id, vnode = 0, epoch = MAX
Implementations§
source§impl GroupConstruct
impl GroupConstruct
sourcepub fn version(&self) -> CompatibilityVersion
pub fn version(&self) -> CompatibilityVersion
Returns the enum value of version
, or the default if the field is set to an invalid enum value.
sourcepub fn set_version(&mut self, value: CompatibilityVersion)
pub fn set_version(&mut self, value: CompatibilityVersion)
Sets version
to the provided enum value.
source§impl GroupConstruct
impl GroupConstruct
pub fn get_group_config(&self) -> Result<&CompactionConfig, PbFieldNotFound>
pub fn get_parent_group_id(&self) -> u64
pub fn get_table_ids(&self) -> &Vec<u32>
pub fn get_group_id(&self) -> u64
pub fn get_new_sst_start_id(&self) -> u64
pub fn get_version(&self) -> Result<CompatibilityVersion, PbFieldNotFound>
pub fn get_split_key(&self) -> Result<&Vec<u8>, PbFieldNotFound>
Trait Implementations§
source§impl Clone for GroupConstruct
impl Clone for GroupConstruct
source§fn clone(&self) -> GroupConstruct
fn clone(&self) -> GroupConstruct
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for GroupConstruct
impl Debug for GroupConstruct
source§impl Default for GroupConstruct
impl Default for GroupConstruct
source§impl<'de> Deserialize<'de> for GroupConstruct
impl<'de> Deserialize<'de> for GroupConstruct
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>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Message for GroupConstruct
impl Message for GroupConstruct
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
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,
Encodes the message to a buffer. Read more
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
Encodes the message to a newly allocated buffer.
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,
Encodes the message with a length-delimiter to a buffer. Read more
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,
Encodes the message with a length-delimiter to a newly allocated buffer.
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes an instance of the message from a buffer. Read more
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,
Decodes a length-delimited instance of the message from the buffer.
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,
Decodes an instance of the message from a buffer, and merges it into
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,
Decodes a length-delimited instance of the message from buffer, and
merges it into
self
.source§impl PartialEq for GroupConstruct
impl PartialEq for GroupConstruct
source§impl Serialize for GroupConstruct
impl Serialize for GroupConstruct
impl Eq for GroupConstruct
impl StructuralPartialEq for GroupConstruct
Auto Trait Implementations§
impl Freeze for GroupConstruct
impl RefUnwindSafe for GroupConstruct
impl Send for GroupConstruct
impl Sync for GroupConstruct
impl Unpin for GroupConstruct
impl UnwindSafe for GroupConstruct
Blanket Implementations§
source§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
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request