pub enum KvTtlPolicy {
FixedDuration {
duration_ms: u64,
},
FieldBased {
field: String,
offset_ms: u64,
},
}Expand description
TTL policy for KV collection key expiration.
Two modes:
FixedDuration: All keys share the same lifetime from insertion time.FieldBased: Each key expires when a referenced timestamp field plus an offset exceeds the current time, allowing per-key variable expiration.
Variants§
FixedDuration
Fixed duration from insertion time. All keys share the same lifetime.
Example DDL: WITH storage = 'kv', ttl = INTERVAL '15 minutes'
FieldBased
Field-based expiration. Each key expires when the referenced timestamp field plus the offset exceeds the current time.
Example DDL: WITH storage = 'kv', ttl = last_active + INTERVAL '1 hour'
Trait Implementations§
Source§impl Clone for KvTtlPolicy
impl Clone for KvTtlPolicy
Source§fn clone(&self) -> KvTtlPolicy
fn clone(&self) -> KvTtlPolicy
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 KvTtlPolicy
impl Debug for KvTtlPolicy
Source§impl<'de> Deserialize<'de> for KvTtlPolicy
impl<'de> Deserialize<'de> for KvTtlPolicy
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<'__msgpack_de> FromMessagePack<'__msgpack_de> for KvTtlPolicy
impl<'__msgpack_de> FromMessagePack<'__msgpack_de> for KvTtlPolicy
Source§impl PartialEq for KvTtlPolicy
impl PartialEq for KvTtlPolicy
Source§impl Serialize for KvTtlPolicy
impl Serialize for KvTtlPolicy
Source§impl ToMessagePack for KvTtlPolicy
impl ToMessagePack for KvTtlPolicy
impl Eq for KvTtlPolicy
impl StructuralPartialEq for KvTtlPolicy
Auto Trait Implementations§
impl Freeze for KvTtlPolicy
impl RefUnwindSafe for KvTtlPolicy
impl Send for KvTtlPolicy
impl Sync for KvTtlPolicy
impl Unpin for KvTtlPolicy
impl UnsafeUnpin for KvTtlPolicy
impl UnwindSafe for KvTtlPolicy
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.