e7f9935099
Adds stall detection when no blocks have been received from the sync peer for at least 3 minutes. The change backports parts of https://github.com/gcash/bchd/pull/105, though has different behavior, such as: - Rotating the sync peer at tip. - Only disconnecting the sync peer if they're height exceeds our own. Since we will instead rotate the sync peer at tip, this prevents us from disconnecting good peers while waiting for new blocks. - Not resetting the progress time when blocks are submitted via rpc. |
||
---|---|---|
.. | ||
blocklogger.go | ||
doc.go | ||
interface.go | ||
log.go | ||
manager.go | ||
README.md |
netsync
Overview
This package implements a concurrency safe block syncing protocol. The SyncManager communicates with connected peers to perform an initial block download, keep the chain and unconfirmed transaction pool in sync, and announce new blocks connected to the chain. Currently the sync manager selects a single sync peer that it downloads all blocks from until it is up to date with the longest chain the sync peer is aware of.
Installation and Updating
$ go get -u github.com/btcsuite/btcd/netsync
License
Package netsync is licensed under the copyfree ISC License.