pub struct ChainSyncConfig {
pub request_tracker: RequestTrackerConfig,
pub meta_sync_max_failures: usize,
pub metadata_sync_begin_count: usize,
pub metadata_sync_end_count: usize,
pub metadata_sync_sampled_count: usize,
pub metadata_sync_segments_boundaries_threshold: usize,
pub blocks_max_send_size: usize,
pub max_leader_common_block_height_delta: BlockHeight,
}Expand description
Chain synchronizer’s configuration
Fields§
§request_tracker: RequestTrackerConfigConfig for requests timing tracker
meta_sync_max_failures: usizeMaximum number of synchronization failures before considering a node offsync
metadata_sync_begin_count: usizeNumber of blocks metadata to always include at beginning of a metadata sync request
metadata_sync_end_count: usizeNumber of blocks metadata to always include at end of a metadata sync request
metadata_sync_sampled_count: usizeNumber of sampled blocks metadata to include between begin and end blocks of a metadata sync request
metadata_sync_segments_boundaries_threshold: usizeWhen doing blocks metadata synchronization, if the requested range spans multiple segments, this is the threshold from which we fall into a fast synchronization mode. Instead of sampling blocks, only the first block of each segments (segments boundary) is sent preventing scanning blocks.
blocks_max_send_size: usizeMaximum number of bytes worth of blocks to send in a response This should be lower than transport maximum packet size
max_leader_common_block_height_delta: BlockHeightMaximum height in blocks that we can tolerate between our common ancestor block and its latest block. If it gets higher than this value, this means that we may have diverged and we need to re-synchronize.
Trait Implementations§
Source§impl Clone for ChainSyncConfig
impl Clone for ChainSyncConfig
Source§fn clone(&self) -> ChainSyncConfig
fn clone(&self) -> ChainSyncConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ChainSyncConfig
impl Debug for ChainSyncConfig
Auto Trait Implementations§
impl Freeze for ChainSyncConfig
impl RefUnwindSafe for ChainSyncConfig
impl Send for ChainSyncConfig
impl Sync for ChainSyncConfig
impl Unpin for ChainSyncConfig
impl UnwindSafe for ChainSyncConfig
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more