Expand description

The syncer downloads and verifies large numbers of blocks from peers to Zebra.

It is used when Zebra is a long way behind the current chain tip.

## Modules

A task that gossips newly verified block::Hashes to peers.
Progress tracking for blockchain syncing.
A channel which holds a list of recent syncer response lengths.

## Structs

Helps work around defects in the bitcoin protocol by checking whether the returned hashes actually extend a chain tip.
A helper type which holds a list of recent syncer response lengths. These sync lengths can be used to work out if Zebra has reached the end of the chain.
A helper type to determine if the synchronizer has likely reached the chain tip.

## Enums

Errors that can occur when gossiping committed blocks

## Constants

Controls how long we wait for a block download request to complete.
Controls how long we wait for a block verify request to complete.
The default for the user-specified lookahead limit.
Controls the number of peers used for each ObtainTips and ExtendTips request.
Controls how long we wait to retry a failed attempt to download and verify the genesis block.
The expected maximum number of hashes in an ObtainTips or ExtendTips response.
A lower bound on the user-specified checkpoint verification concurrency limit.
A lower bound on the user-specified concurrency limit.
Controls how long we wait to restart syncing after finishing a sync run.
Controls how long we wait for a tips response to return.

## Functions

Run continuously, gossiping newly verified block::Hashes to peers.
Logs Zebra’s estimated progress towards the chain tip every minute or so.