Struct engine_panic::PanicEngine [−][src]
pub struct PanicEngine;
Trait Implementations
impl CFNamesExt for PanicEngine
[src][+]
fn cf_names(&self) -> Vec<&str>
[src]
impl CFOptionsExt for PanicEngine
[src][+]
type ColumnFamilyOptions = PanicColumnFamilyOptions
fn get_options_cf(&self, cf: &str) -> Result<Self::ColumnFamilyOptions>
[src]
fn set_options_cf(&self, cf: &str, options: &[(&str, &str)]) -> Result<()>
[src]
impl Clone for PanicEngine
[src][+]
fn clone(&self) -> PanicEngine
[src][−]
Returns a copy of the value. Read more
pub fn clone_from(&mut self, source: &Self)
1.0.0[src][−]
Performs copy-assignment from source
. Read more
impl CompactExt for PanicEngine
[src][+]
type CompactedEvent = PanicCompactedEvent
fn auto_compactions_is_disabled(&self) -> Result<bool>
[src][−]
Checks whether any column family sets disable_auto_compactions
to True
or not.
fn compact_range(
&self,
cf: &str,
start_key: Option<&[u8]>,
end_key: Option<&[u8]>,
exclusive_manual: bool,
max_subcompactions: u32
) -> Result<()>
[src][−]
&self,
cf: &str,
start_key: Option<&[u8]>,
end_key: Option<&[u8]>,
exclusive_manual: bool,
max_subcompactions: u32
) -> Result<()>
Compacts the column families in the specified range by manual or not.
fn compact_files_in_range(
&self,
start: Option<&[u8]>,
end: Option<&[u8]>,
output_level: Option<i32>
) -> Result<()>
[src][−]
&self,
start: Option<&[u8]>,
end: Option<&[u8]>,
output_level: Option<i32>
) -> Result<()>
Compacts files in the range and above the output level. Compacts all files if the range is not specified. Compacts all files to the bottommost level if the output level is not specified. Read more
fn compact_files_in_range_cf(
&self,
cf: &str,
start: Option<&[u8]>,
end: Option<&[u8]>,
output_level: Option<i32>
) -> Result<()>
[src][−]
&self,
cf: &str,
start: Option<&[u8]>,
end: Option<&[u8]>,
output_level: Option<i32>
) -> Result<()>
Compacts files in the range and above the output level of the given column family. Compacts all files to the bottommost level if the output level is not specified. Read more
fn compact_files_cf(
&self,
cf: &str,
files: Vec<String>,
output_level: Option<i32>,
max_subcompactions: u32,
exclude_l0: bool
) -> Result<()>
[src]
&self,
cf: &str,
files: Vec<String>,
output_level: Option<i32>,
max_subcompactions: u32,
exclude_l0: bool
) -> Result<()>
impl DBOptionsExt for PanicEngine
[src][+]
type DBOptions = PanicDBOptions
fn get_db_options(&self) -> Self::DBOptions
[src]
fn set_db_options(&self, options: &[(&str, &str)]) -> Result<()>
[src]
impl Debug for PanicEngine
[src][+]
fn fmt(&self, f: &mut Formatter<'_>) -> Result
[src][−]
Formats the value using the given formatter. Read more
impl ImportExt for PanicEngine
[src][+]
type IngestExternalFileOptions = PanicIngestExternalFileOptions
fn ingest_external_file_cf(
&self,
cf: &str,
opts: &Self::IngestExternalFileOptions,
files: &[&str]
) -> Result<()>
[src]
&self,
cf: &str,
opts: &Self::IngestExternalFileOptions,
files: &[&str]
) -> Result<()>
fn reset_global_seq<P: AsRef<Path>>(&self, cf: &str, path: P) -> Result<()>
[src]
impl Iterable for PanicEngine
[src][+]
type Iterator = PanicEngineIterator
fn iterator_opt(&self, opts: IterOptions) -> Result<Self::Iterator>
[src]
fn iterator_cf_opt(&self, cf: &str, opts: IterOptions) -> Result<Self::Iterator>
[src]
pub fn iterator(&self) -> Result<Self::Iterator, Error>
[src]
pub fn iterator_cf(&self, cf: &str) -> Result<Self::Iterator, Error>
[src]
pub fn scan<F>(
&self,
start_key: &[u8],
end_key: &[u8],
fill_cache: bool,
f: F
) -> Result<(), Error> where
F: FnMut(&[u8], &[u8]) -> Result<bool, Error>,
[src]
&self,
start_key: &[u8],
end_key: &[u8],
fill_cache: bool,
f: F
) -> Result<(), Error> where
F: FnMut(&[u8], &[u8]) -> Result<bool, Error>,
pub fn scan_cf<F>(
&self,
cf: &str,
start_key: &[u8],
end_key: &[u8],
fill_cache: bool,
f: F
) -> Result<(), Error> where
F: FnMut(&[u8], &[u8]) -> Result<bool, Error>,
[src]
&self,
cf: &str,
start_key: &[u8],
end_key: &[u8],
fill_cache: bool,
f: F
) -> Result<(), Error> where
F: FnMut(&[u8], &[u8]) -> Result<bool, Error>,
pub fn seek(
&self,
key: &[u8]
) -> Result<Option<(Vec<u8, Global>, Vec<u8, Global>)>, Error>
[src]
&self,
key: &[u8]
) -> Result<Option<(Vec<u8, Global>, Vec<u8, Global>)>, Error>
pub fn seek_cf(
&self,
cf: &str,
key: &[u8]
) -> Result<Option<(Vec<u8, Global>, Vec<u8, Global>)>, Error>
[src]
&self,
cf: &str,
key: &[u8]
) -> Result<Option<(Vec<u8, Global>, Vec<u8, Global>)>, Error>
impl KvEngine for PanicEngine
[src][+]
type Snapshot = PanicSnapshot
A consistent read-only snapshot of the database
fn snapshot(&self) -> Self::Snapshot
[src][−]
Create a snapshot
fn sync(&self) -> Result<()>
[src][−]
Syncs any writes to disk
fn bad_downcast<T: 'static>(&self) -> &T
[src][−]
Cast to a concrete engine type Read more
pub fn flush_metrics(&self, _instance: &str)
[src][−]
Flush metrics to prometheus Read more
pub fn reset_statistics(&self)
[src][−]
Reset internal statistics
impl MiscExt for PanicEngine
[src][+]
fn flush(&self, sync: bool) -> Result<()>
[src]
fn flush_cf(&self, cf: &str, sync: bool) -> Result<()>
[src]
fn delete_ranges_cf(
&self,
cf: &str,
strategy: DeleteStrategy,
ranges: &[Range<'_>]
) -> Result<()>
[src]
&self,
cf: &str,
strategy: DeleteStrategy,
ranges: &[Range<'_>]
) -> Result<()>
fn get_approximate_memtable_stats_cf(
&self,
cf: &str,
range: &Range<'_>
) -> Result<(u64, u64)>
[src][−]
&self,
cf: &str,
range: &Range<'_>
) -> Result<(u64, u64)>
Return the approximate number of records and size in the range of memtables of the cf.
fn ingest_maybe_slowdown_writes(&self, cf: &str) -> Result<bool>
[src]
fn get_engine_used_size(&self) -> Result<u64>
[src][−]
Gets total used size of rocksdb engine, including: Read more
fn roughly_cleanup_ranges(&self, ranges: &[(Vec<u8>, Vec<u8>)]) -> Result<()>
[src][−]
Roughly deletes files in multiple ranges. Read more
fn path(&self) -> &str
[src][−]
The path to the directory on the filesystem where the database is stored
fn sync_wal(&self) -> Result<()>
[src]
fn exists(path: &str) -> bool
[src][−]
Check whether a database exists at a given path
fn dump_stats(&self) -> Result<String>
[src][−]
Dump stats about the database into a string. Read more
fn get_latest_sequence_number(&self) -> u64
[src]
fn get_oldest_snapshot_sequence_number(&self) -> Option<u64>
[src]
fn get_total_sst_files_size_cf(&self, cf: &str) -> Result<Option<u64>>
[src]
fn get_range_entries_and_versions(
&self,
cf: &str,
start: &[u8],
end: &[u8]
) -> Result<Option<(u64, u64)>>
[src]
&self,
cf: &str,
start: &[u8],
end: &[u8]
) -> Result<Option<(u64, u64)>>
fn get_cf_num_files_at_level(
&self,
cf: &str,
level: usize
) -> Result<Option<u64>>
[src]
&self,
cf: &str,
level: usize
) -> Result<Option<u64>>
fn get_cf_num_immutable_mem_table(&self, cf: &str) -> Result<Option<u64>>
[src]
fn get_cf_compaction_pending_bytes(&self, cf: &str) -> Result<Option<u64>>
[src]
fn is_stalled_or_stopped(&self) -> bool
[src]
pub fn delete_all_in_range(
&self,
strategy: DeleteStrategy,
ranges: &[Range<'_>]
) -> Result<(), Error>
[src]
&self,
strategy: DeleteStrategy,
ranges: &[Range<'_>]
) -> Result<(), Error>
impl MvccPropertiesExt for PanicEngine
[src][+]
fn get_mvcc_properties_cf(
&self,
cf: &str,
safe_point: TimeStamp,
start_key: &[u8],
end_key: &[u8]
) -> Option<MvccProperties>
[src]
&self,
cf: &str,
safe_point: TimeStamp,
start_key: &[u8],
end_key: &[u8]
) -> Option<MvccProperties>
impl Peekable for PanicEngine
[src][+]
type DBVector = PanicDBVector
The byte-vector type through which the database returns read values.
fn get_value_opt(
&self,
opts: &ReadOptions,
key: &[u8]
) -> Result<Option<Self::DBVector>>
[src][−]
&self,
opts: &ReadOptions,
key: &[u8]
) -> Result<Option<Self::DBVector>>
Read a value for a key, given a set of options. Read more
fn get_value_cf_opt(
&self,
opts: &ReadOptions,
cf: &str,
key: &[u8]
) -> Result<Option<Self::DBVector>>
[src][−]
&self,
opts: &ReadOptions,
cf: &str,
key: &[u8]
) -> Result<Option<Self::DBVector>>
Read a value for a key from a given column family, given a set of options. Read more
pub fn get_value(&self, key: &[u8]) -> Result<Option<Self::DBVector>, Error>
[src][−]
Read a value for a key. Read more
pub fn get_value_cf(
&self,
cf: &str,
key: &[u8]
) -> Result<Option<Self::DBVector>, Error>
[src][−]
&self,
cf: &str,
key: &[u8]
) -> Result<Option<Self::DBVector>, Error>
Read a value for a key from a given column family. Read more
pub fn get_msg<M>(&self, key: &[u8]) -> Result<Option<M>, Error> where
M: Message + Default,
[src][−]
M: Message + Default,
Read a value and return it as a protobuf message.
pub fn get_msg_cf<M>(&self, cf: &str, key: &[u8]) -> Result<Option<M>, Error> where
M: Message + Default,
[src][−]
M: Message + Default,
Read a value and return it as a protobuf message.
impl PerfContextExt for PanicEngine
[src][+]
type PerfContext = PanicPerfContext
fn get_perf_context(
&self,
level: PerfLevel,
kind: PerfContextKind
) -> Self::PerfContext
[src]
&self,
level: PerfLevel,
kind: PerfContextKind
) -> Self::PerfContext
impl RaftEngine for PanicEngine
[src][+]
type LogBatch = PanicWriteBatch
fn log_batch(&self, capacity: usize) -> Self::LogBatch
[src]
fn sync(&self) -> Result<()>
[src][−]
Synchronize the Raft engine.
fn get_raft_state(&self, raft_group_id: u64) -> Result<Option<RaftLocalState>>
[src]
fn get_entry(&self, raft_group_id: u64, index: u64) -> Result<Option<Entry>>
[src]
fn fetch_entries_to(
&self,
region_id: u64,
low: u64,
high: u64,
max_size: Option<usize>,
buf: &mut Vec<Entry>
) -> Result<usize>
[src][−]
&self,
region_id: u64,
low: u64,
high: u64,
max_size: Option<usize>,
buf: &mut Vec<Entry>
) -> Result<usize>
Return count of fetched entries.
fn consume(&self, batch: &mut Self::LogBatch, sync_log: bool) -> Result<usize>
[src][−]
Consume the write batch by moving the content into the engine itself and return written bytes. Read more
fn consume_and_shrink(
&self,
batch: &mut Self::LogBatch,
sync_log: bool,
max_capacity: usize,
shrink_to: usize
) -> Result<usize>
[src][−]
&self,
batch: &mut Self::LogBatch,
sync_log: bool,
max_capacity: usize,
shrink_to: usize
) -> Result<usize>
Like consume
but shrink batch
if need.
fn clean(
&self,
raft_group_id: u64,
state: &RaftLocalState,
batch: &mut Self::LogBatch
) -> Result<()>
[src]
&self,
raft_group_id: u64,
state: &RaftLocalState,
batch: &mut Self::LogBatch
) -> Result<()>
fn append(&self, raft_group_id: u64, entries: Vec<Entry>) -> Result<usize>
[src][−]
Append some log entries and return written bytes. Read more
fn put_raft_state(
&self,
raft_group_id: u64,
state: &RaftLocalState
) -> Result<()>
[src]
&self,
raft_group_id: u64,
state: &RaftLocalState
) -> Result<()>
fn gc(&self, raft_group_id: u64, from: u64, to: u64) -> Result<usize>
[src][−]
Like cut_logs
but the range could be very large. Return the deleted count.
Generally, from
can be passed in 0
. Read more
fn purge_expired_files(&self) -> Result<Vec<u64>>
[src][−]
Purge expired logs files and return a set of Raft group ids which needs to be compacted ASAP. Read more
fn has_builtin_entry_cache(&self) -> bool
[src][−]
The RaftEngine
has a builtin entry cache or not.
fn flush_metrics(&self, instance: &str)
[src]
fn reset_statistics(&self)
[src]
fn dump_stats(&self) -> Result<String>
[src]
pub fn gc_entry_cache(&self, _raft_group_id: u64, _to: u64)
[src][−]
GC the builtin entry cache.
pub fn flush_stats(&self) -> Option<CacheStats>
[src]
pub fn stop(&self)
[src]
impl RangePropertiesExt for PanicEngine
[src][+]
fn get_range_approximate_keys(
&self,
range: Range<'_>,
large_threshold: u64
) -> Result<u64>
[src][−]
&self,
range: Range<'_>,
large_threshold: u64
) -> Result<u64>
Gets the number of keys in a range.
fn get_range_approximate_keys_cf(
&self,
cfname: &str,
range: Range<'_>,
large_threshold: u64
) -> Result<u64>
[src]
&self,
cfname: &str,
range: Range<'_>,
large_threshold: u64
) -> Result<u64>
fn get_range_approximate_size(
&self,
range: Range<'_>,
large_threshold: u64
) -> Result<u64>
[src][−]
&self,
range: Range<'_>,
large_threshold: u64
) -> Result<u64>
Get the approximate size of the range
fn get_range_approximate_size_cf(
&self,
cfname: &str,
range: Range<'_>,
large_threshold: u64
) -> Result<u64>
[src]
&self,
cfname: &str,
range: Range<'_>,
large_threshold: u64
) -> Result<u64>
fn get_range_approximate_split_keys(
&self,
range: Range<'_>,
key_count: usize
) -> Result<Vec<Vec<u8>>>
[src][−]
&self,
range: Range<'_>,
key_count: usize
) -> Result<Vec<Vec<u8>>>
Get range approximate split keys to split range evenly into key_count + 1 parts .
fn get_range_approximate_split_keys_cf(
&self,
cfname: &str,
range: Range<'_>,
key_count: usize
) -> Result<Vec<Vec<u8>>>
[src]
&self,
cfname: &str,
range: Range<'_>,
key_count: usize
) -> Result<Vec<Vec<u8>>>
impl SstExt for PanicEngine
[src]
type SstReader = PanicSstReader
type SstWriter = PanicSstWriter
type SstWriterBuilder = PanicSstWriterBuilder
impl SstWriterBuilder<PanicEngine> for PanicSstWriterBuilder
[src][+]
fn new() -> Self
[src][−]
Create a new SstWriterBuilder.
fn set_db(self, db: &PanicEngine) -> Self
[src][−]
Set DB for the builder. The builder may need some config from the DB.
fn set_cf(self, cf: &str) -> Self
[src][−]
Set CF for the builder. The builder may need some config from the CF.
fn set_in_memory(self, in_memory: bool) -> Self
[src][−]
Set it to true, the builder builds a in-memory SST builder.
fn set_compression_type(self, compression: Option<SstCompressionType>) -> Self
[src][−]
set other config specified by writer
fn set_compression_level(self, level: i32) -> Self
[src]
fn build(self, path: &str) -> Result<PanicSstWriter>
[src][−]
Builder a SstWriter.
impl SyncMutable for PanicEngine
[src][+]
fn put(&self, key: &[u8], value: &[u8]) -> Result<()>
[src]
fn put_cf(&self, cf: &str, key: &[u8], value: &[u8]) -> Result<()>
[src]
fn delete(&self, key: &[u8]) -> Result<()>
[src]
fn delete_cf(&self, cf: &str, key: &[u8]) -> Result<()>
[src]
fn delete_range(&self, begin_key: &[u8], end_key: &[u8]) -> Result<()>
[src]
fn delete_range_cf(
&self,
cf: &str,
begin_key: &[u8],
end_key: &[u8]
) -> Result<()>
[src]
&self,
cf: &str,
begin_key: &[u8],
end_key: &[u8]
) -> Result<()>
pub fn put_msg<M>(&self, key: &[u8], m: &M) -> Result<(), Error> where
M: Message,
[src]
M: Message,
pub fn put_msg_cf<M>(&self, cf: &str, key: &[u8], m: &M) -> Result<(), Error> where
M: Message,
[src]
M: Message,
impl TablePropertiesExt for PanicEngine
[src][+]
type TablePropertiesCollection = PanicTablePropertiesCollection
type TablePropertiesCollectionIter = PanicTablePropertiesCollectionIter
type TablePropertiesKey = PanicTablePropertiesKey
type TableProperties = PanicTableProperties
type UserCollectedProperties = PanicUserCollectedProperties
fn get_properties_of_tables_in_range(
&self,
cf: &str,
ranges: &[Range<'_>]
) -> Result<Self::TablePropertiesCollection>
[src]
&self,
cf: &str,
ranges: &[Range<'_>]
) -> Result<Self::TablePropertiesCollection>
pub fn get_range_properties_cf(
&self,
cfname: &str,
start_key: &[u8],
end_key: &[u8]
) -> Result<Self::TablePropertiesCollection, Error>
[src]
&self,
cfname: &str,
start_key: &[u8],
end_key: &[u8]
) -> Result<Self::TablePropertiesCollection, Error>
impl TtlPropertiesExt for PanicEngine
[src][+]
fn get_range_ttl_properties_cf(
&self,
cf: &str,
start_key: &[u8],
end_key: &[u8]
) -> Result<Vec<(String, TtlProperties)>>
[src]
&self,
cf: &str,
start_key: &[u8],
end_key: &[u8]
) -> Result<Vec<(String, TtlProperties)>>
impl WriteBatch<PanicEngine> for PanicWriteBatch
[src][+]
fn with_capacity(_: &PanicEngine, _: usize) -> Self
[src][−]
Create a WriteBatch with a given command capacity
fn write_opt(&self, _: &WriteOptions) -> Result<()>
[src][−]
Commit the WriteBatch to disk with the given options
fn data_size(&self) -> usize
[src][−]
The data size of a write batch Read more
fn count(&self) -> usize
[src][−]
The number of commands in this batch
fn is_empty(&self) -> bool
[src][−]
Whether any commands have been issued to this batch
fn should_write_to_engine(&self) -> bool
[src][−]
Whether the number of commands exceeds WRITE_BATCH_MAX_KEYS Read more
fn clear(&mut self)
[src][−]
Clears the WriteBatch of all commands Read more
fn set_save_point(&mut self)
[src][−]
Push a save point onto the save point stack
fn pop_save_point(&mut self) -> Result<()>
[src][−]
Pop a save point from the save point stack Read more
fn rollback_to_save_point(&mut self) -> Result<()>
[src][−]
Revert all commands issued since the last save point Read more
pub fn write(&self) -> Result<(), Error>
[src][−]
Commit the WriteBatch to disk atomically
impl WriteBatchExt for PanicEngine
[src][+]
type WriteBatch = PanicWriteBatch
type WriteBatchVec = PanicWriteBatch
WriteBatchVec
is used for multi_batch_write
of RocksEngine and other Engine could also
implement another kind of WriteBatch according to their needs. Read more
const WRITE_BATCH_MAX_KEYS: usize
[src][−][−]
The number of puts/deletes made to a write batch before the batch should
be committed with write
. More entries than this will cause
should_write_to_engine
to return true. Read more
fn support_write_batch_vec(&self) -> bool
[src][−]
Indicates whether the WriteBatchVec type can be created and works as expected. Read more
fn write_batch(&self) -> Self::WriteBatch
[src]
fn write_batch_with_cap(&self, cap: usize) -> Self::WriteBatch
[src]
Auto Trait Implementations
impl RefUnwindSafe for PanicEngine
impl Send for PanicEngine
impl Sync for PanicEngine
impl Unpin for PanicEngine
impl UnwindSafe for PanicEngine
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
pub fn type_id(&self) -> TypeId
[src][−]
Gets the TypeId
of self
. Read more
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
pub fn borrow(&self) -> &T
[src][−]
Immutably borrows from an owned value. Read more
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src][−]
Mutably borrows from an owned value. Read more
impl<T> From<T> for T
[src][+]
impl<T> Instrument for T
[src][+]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src][−]
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
pub fn in_current_span(self) -> Instrumented<Self>
[src][−]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> Pointable for T
[src][+]
pub const ALIGN: usize
[src][−][−]
The alignment of pointer.
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
[src][−]
Initializes a with the given initializer. Read more
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
[src][−]
Dereferences the given pointer. Read more
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
[src][−]
Mutably dereferences the given pointer. Read more
pub unsafe fn drop(ptr: usize)
[src][−]
Drops the object pointed to by the given pointer. Read more
impl<T> Same<T> for T
[src]
type Output = T
Should always be Self
impl<T> Sealed<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> SendSyncUnwindSafe for T where
T: Send + Sync + UnwindSafe + ?Sized,
[src]
T: Send + Sync + UnwindSafe + ?Sized,
impl<T> ToOwned for T where
T: Clone,
[src][+]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src][−]
Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src][−]
🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src][−]
Performs the conversion.
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src][−]
Performs the conversion.
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
[src][+]
V: MultiLane<T>,