pub enum EvictionPolicyType {
Clock,
Lru2,
Lirs,
}Expand description
Buffer pool eviction policy type
Different eviction policies offer different trade-offs:
- Clock: Simple, fast, good for general workloads
- LRU-2: Better scan resistance (5-15% higher hit rate for mixed workloads)
- LIRS: Best for workloads with varying access patterns
Variants§
Clock
Clock algorithm (second-chance) - simple and fast
Lru2
LRU-2 algorithm - tracks last 2 access times for scan resistance
Lirs
LIRS algorithm - adapts to workload patterns
Trait Implementations§
Source§impl Clone for EvictionPolicyType
impl Clone for EvictionPolicyType
Source§fn clone(&self) -> EvictionPolicyType
fn clone(&self) -> EvictionPolicyType
Returns a duplicate 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 EvictionPolicyType
impl Debug for EvictionPolicyType
Source§impl Default for EvictionPolicyType
impl Default for EvictionPolicyType
Source§fn default() -> EvictionPolicyType
fn default() -> EvictionPolicyType
Returns the “default value” for a type. Read more
Source§impl PartialEq for EvictionPolicyType
impl PartialEq for EvictionPolicyType
impl Copy for EvictionPolicyType
impl Eq for EvictionPolicyType
impl StructuralPartialEq for EvictionPolicyType
Auto Trait Implementations§
impl Freeze for EvictionPolicyType
impl RefUnwindSafe for EvictionPolicyType
impl Send for EvictionPolicyType
impl Sync for EvictionPolicyType
impl Unpin for EvictionPolicyType
impl UnsafeUnpin for EvictionPolicyType
impl UnwindSafe for EvictionPolicyType
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