pub enum SyncStatus {
Show 13 variants
Initial,
NoSync,
AwaitingPeers(bool),
HeaderSync {
sync_head: Tip,
highest_height: u64,
highest_diff: Difficulty,
},
TxHashsetPibd {
aborted: bool,
errored: bool,
completed_leaves: u64,
leaves_required: u64,
completed_to_height: u64,
required_height: u64,
},
TxHashsetDownload(TxHashsetDownloadStats),
TxHashsetSetup {
headers: Option<u64>,
headers_total: Option<u64>,
kernel_pos: Option<u64>,
kernel_pos_total: Option<u64>,
},
TxHashsetKernelsValidation {
kernels: u64,
kernels_total: u64,
},
TxHashsetRangeProofsValidation {
rproofs: u64,
rproofs_total: u64,
},
TxHashsetSave,
TxHashsetDone,
BodySync {
current_height: u64,
highest_height: u64,
},
Shutdown,
}
Expand description
Various status sync can be in, whether it’s fast sync or archival.
Variants§
Initial
Initial State (we do not yet know if we are/should be syncing)
NoSync
Not syncing
AwaitingPeers(bool)
Not enough peers to do anything yet, boolean indicates whether we should wait at all or ignore and start ASAP
HeaderSync
Downloading block headers
Fields
§
highest_diff: Difficulty
diff of the most advanced peer
TxHashsetPibd
Performing PIBD reconstruction of txhashset If PIBD syncer determines there’s not enough PIBD peers to continue, then move on to TxHashsetDownload state
Fields
TxHashsetDownload(TxHashsetDownloadStats)
Downloading the various txhashsets
TxHashsetSetup
Setting up before validation
Fields
TxHashsetKernelsValidation
Validating the kernels
TxHashsetRangeProofsValidation
Validating the range proofs
TxHashsetSave
Finalizing the new state
TxHashsetDone
State sync finalized
BodySync
Downloading blocks
Shutdown
Shutdown
Trait Implementations§
Source§impl Clone for SyncStatus
impl Clone for SyncStatus
Source§fn clone(&self) -> SyncStatus
fn clone(&self) -> SyncStatus
Returns a copy 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 SyncStatus
impl Debug for SyncStatus
Source§impl<'de> Deserialize<'de> for SyncStatus
impl<'de> Deserialize<'de> for SyncStatus
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 PartialEq for SyncStatus
impl PartialEq for SyncStatus
Source§impl Serialize for SyncStatus
impl Serialize for SyncStatus
impl Copy for SyncStatus
impl StructuralPartialEq for SyncStatus
Auto Trait Implementations§
impl Freeze for SyncStatus
impl RefUnwindSafe for SyncStatus
impl Send for SyncStatus
impl Sync for SyncStatus
impl Unpin for SyncStatus
impl UnwindSafe for SyncStatus
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,
Source§impl<'a, T> DefaultFeatures<'a> for T
impl<'a, T> DefaultFeatures<'a> for T
Source§fn clone_boxed(&self) -> Box<dyn DefaultFeatures<'a>>
fn clone_boxed(&self) -> Box<dyn DefaultFeatures<'a>>
Clone this value, and then immediately put it into a
Box
behind a trait object of this trait.Source§impl<'a, T> NonSyncFeatures<'a> for Twhere
T: 'a + Clone,
impl<'a, T> NonSyncFeatures<'a> for Twhere
T: 'a + Clone,
Source§fn clone_boxed(&self) -> Box<dyn NonSyncFeatures<'a>>
fn clone_boxed(&self) -> Box<dyn NonSyncFeatures<'a>>
Clone this value, and then immediately put it into a
Box
behind a trait object of this trait.