pub struct GlobalSnapshot {
pub all_transactions: HashSet<TxSummary>,
pub missing: HashMap<String, HashSet<TxSummary>>,
}
Expand description
Global snapshot combining all local snapshots
Fields§
§all_transactions: HashSet<TxSummary>
Union of all transactions across nodes
missing: HashMap<String, HashSet<TxSummary>>
Map of missing transactions per node
Implementations§
Source§impl GlobalSnapshot
impl GlobalSnapshot
Sourcepub fn is_consistent(snaps: &[LocalSnapshot]) -> bool
pub fn is_consistent(snaps: &[LocalSnapshot]) -> bool
Checks if a set of local snapshots is consistent
A set of snapshots is consistent if for any pair of nodes i and j, the vector clock value of j in i’s snapshot is not greater than the vector clock value of j in j’s own snapshot.
Trait Implementations§
Source§impl Clone for GlobalSnapshot
impl Clone for GlobalSnapshot
Source§fn clone(&self) -> GlobalSnapshot
fn clone(&self) -> GlobalSnapshot
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 GlobalSnapshot
impl Debug for GlobalSnapshot
Auto Trait Implementations§
impl Freeze for GlobalSnapshot
impl RefUnwindSafe for GlobalSnapshot
impl Send for GlobalSnapshot
impl Sync for GlobalSnapshot
impl Unpin for GlobalSnapshot
impl UnwindSafe for GlobalSnapshot
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,
§impl<T> InitializeFromFunction<T> for T
impl<T> InitializeFromFunction<T> for T
§fn initialize_from_function(f: fn() -> T) -> T
fn initialize_from_function(f: fn() -> T) -> T
Create an instance of this type from an initialization function
§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>
§impl<CustErr, T, Request> IntoReq<GetUrl, Request, CustErr> for T
impl<CustErr, T, Request> IntoReq<GetUrl, Request, CustErr> for T
§impl<CustErr, T, Request> IntoReq<Json, Request, CustErr> for T
impl<CustErr, T, Request> IntoReq<Json, Request, CustErr> for T
§impl<CustErr, T, Request> IntoReq<PostUrl, Request, CustErr> for T
impl<CustErr, T, Request> IntoReq<PostUrl, Request, CustErr> for T
§impl<CustErr, T, Response> IntoRes<Json, Response, CustErr> for T
impl<CustErr, T, Response> IntoRes<Json, Response, CustErr> for T
§impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
§fn super_from(input: T) -> O
fn super_from(input: T) -> O
Convert from a type to another type.
§impl<T, O, M> SuperInto<O, M> for Twhere
O: SuperFrom<T, M>,
impl<T, O, M> SuperInto<O, M> for Twhere
O: SuperFrom<T, M>,
§fn super_into(self) -> O
fn super_into(self) -> O
Convert from a type to another type.