pub enum CommitmentLevel {
Max,
Recent,
Root,
Single,
SingleGossip,
Processed,
Confirmed,
Finalized,
}
Expand description
An attribute of a slot. It describes how finalized a block is at some point in time. For example, a slot is said to be at the max level immediately after the cluster recognizes the block at that slot as finalized. When querying the ledger state, use lower levels of commitment to report progress and higher levels to ensure state changes will not be rolled back.
Variants§
Max
(DEPRECATED) The highest slot having reached max vote lockout, as recognized by a supermajority of the cluster.
Recent
(DEPRECATED) The highest slot of the heaviest fork. Ledger state at this slot is not derived from a finalized block, but if multiple forks are present, is from the fork the validator believes is most likely to finalize.
Root
(DEPRECATED) The highest slot having reached max vote lockout.
Single
(DEPRECATED) The highest slot having reached 1 confirmation by supermajority of the cluster.
SingleGossip
(DEPRECATED) The highest slot that has been voted on by supermajority of the cluster
This differs from single
in that:
- It incorporates votes from gossip and replay.
- It does not count votes on descendants of a block, only direct votes on that block.
- This confirmation level also upholds “optimistic confirmation” guarantees in release 1.3 and onwards.
Processed
The highest slot of the heaviest fork processed by the node. Ledger state at this slot is not derived from a confirmed or finalized block, but if multiple forks are present, is from the fork the validator believes is most likely to finalize.
Confirmed
The highest slot that has been voted on by supermajority of the cluster, ie. is confirmed. Confirmation incorporates votes from gossip and replay. It does not count votes on descendants of a block, only direct votes on that block, and upholds “optimistic confirmation” guarantees in release 1.3 and onwards.
Finalized
The highest slot having reached max vote lockout, as recognized by a supermajority of the cluster.
Trait Implementations§
source§impl Clone for CommitmentLevel
impl Clone for CommitmentLevel
source§fn clone(&self) -> CommitmentLevel
fn clone(&self) -> CommitmentLevel
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for CommitmentLevel
impl Debug for CommitmentLevel
source§impl Default for CommitmentLevel
impl Default for CommitmentLevel
source§impl<'de> Deserialize<'de> for CommitmentLevel
impl<'de> Deserialize<'de> for CommitmentLevel
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>,
source§impl Display for CommitmentLevel
impl Display for CommitmentLevel
source§impl FromStr for CommitmentLevel
impl FromStr for CommitmentLevel
source§impl Hash for CommitmentLevel
impl Hash for CommitmentLevel
source§impl PartialEq<CommitmentLevel> for CommitmentLevel
impl PartialEq<CommitmentLevel> for CommitmentLevel
source§fn eq(&self, other: &CommitmentLevel) -> bool
fn eq(&self, other: &CommitmentLevel) -> bool
self
and other
values to be equal, and is used
by ==
.