#[non_exhaustive]pub enum FutureStampPolicy {
Default,
Tolerance(Duration),
Allow,
}Expand description
What crate::Database::open_tuned does about a recorded_at in the future
(0.13.5, W7.4, [D-178]).
Shaped like crate::WalCheckpointPolicy and for
D-155’s reason: this
guards an invariant, so “leave it alone” must not be spelt with an Option
whose None turns it off for every caller who never heard of it.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Default
Refuse beyond DEFAULT_FUTURE_STAMP_TOLERANCE.
Tolerance(Duration)
Refuse beyond a tolerance of your own. Duration::ZERO refuses any
stamp at all ahead of the wall clock, which is the strictest form and is
only reasonable where the host’s time is known good.
Allow
Open regardless, and take the floor from whatever is stored.
The repair path, and it is not a repair. It exists because a database this check refuses cannot otherwise be reached by the crate that refuses it, and inspecting a file requires opening it. Every write made under this policy inherits the poisoned floor, so use it to read and to plan, not to carry on.
Trait Implementations§
Source§impl Clone for FutureStampPolicy
impl Clone for FutureStampPolicy
Source§fn clone(&self) -> FutureStampPolicy
fn clone(&self) -> FutureStampPolicy
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for FutureStampPolicy
Source§impl Debug for FutureStampPolicy
impl Debug for FutureStampPolicy
Source§impl Default for FutureStampPolicy
impl Default for FutureStampPolicy
Source§fn default() -> FutureStampPolicy
fn default() -> FutureStampPolicy
impl Eq for FutureStampPolicy
Source§impl PartialEq for FutureStampPolicy
impl PartialEq for FutureStampPolicy
impl StructuralPartialEq for FutureStampPolicy
Auto Trait Implementations§
impl Freeze for FutureStampPolicy
impl RefUnwindSafe for FutureStampPolicy
impl Send for FutureStampPolicy
impl Sync for FutureStampPolicy
impl Unpin for FutureStampPolicy
impl UnsafeUnpin for FutureStampPolicy
impl UnwindSafe for FutureStampPolicy
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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<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
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§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>
T in a tonic::Request